~cyphermox/ubuntu/wily/grub2/lp1097570

1.15.18 by Colin Watson
Import upstream version 2.02~beta2
1
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
2
3
	* configure.ac: Set version to 2.02~beta2.
4
5
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
6
7
	* grub-core/disk/efi/efidisk.c (name_devices): Skip Apple ghosts.
8
9
2013-12-24  Andrey Borzenkov <arvidjaar@gmail.com>
10
11
	* util/grub-probe.c: Improve help message and simplify list handling.
12
13
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
14
15
	Fix buffer overflow in grub_efi_print_device_path.
16
17
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
18
19
	Show SATA device path.
20
21
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
22
23
	Revert grub-file usage in grub-mkconfig.
24
25
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
26
27
	Make newly-created files other than grub.cfg world-readable.
28
29
2013-12-24  Andrey Borzenkov <arvidjaar@gmail.com>
30
31
	* util/grub.d/00_header.in: Improve compatibility with old config.
32
33
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
34
35
	Make rijndael.c respect aliasing rules.
36
37
	Trivial backport of dfb4673da8ee52d95e0a62c9f49ca8599943f22e.
38
39
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
40
41
	Make grub_util_device_is_mapped_stat available in grub-emu core.
42
43
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
44
45
	Add -Qn to TARGET_CFLAGS if it's supported.
46
	Fixes compilation on cygwin.
47
48
	Reported by: Andrey Borzenkov.
49
	Suggested by: Andrey Borzenkov.
50
51
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
52
53
	Save TARGET_CC version in modinfo.sh.
54
55
	Suggested by: Andrey Borzenkov.
56
57
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
58
59
	Make grub_util_devmapper_part_to_disk and grub_util_find_partition_start
60
	follow the same algorithm to avoid method mismatch. Don't assume
61
	DMRAID- UUID to mean full disk but instead check that mapping is linear.
62
63
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
64
65
	Declare GRUB_EFI_VENDOR_APPLE_GUID.
66
67
2013-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
68
69
	Dump type and vendor specific data when printing device path.
70
71
2013-12-23  Colin Watson  <cjwatson@debian.org>
72
73
	Update some documentation to refer to Git rather than Bazaar.
74
75
	* docs/grub.texi (Obtaining and Building GRUB): Refer to Git rather
76
	than Bazaar.
77
	* po/README: Likewise.  Fix spelling mistake.
78
79
2013-12-23  Colin Watson  <cjwatson@ubuntu.com>
80
81
	Don't distribute config.h.
82
83
	* Makefile.am (platform_HEADERS): Move to ...
84
	(nodist_platform_HEADERS): ... here.  Fixes gettext_strings_test
85
	failure when building from a distributed tarball.
86
87
2013-12-23  Colin Watson  <cjwatson@ubuntu.com>
88
89
	* configure.ac: Fix spelling.
90
	* grub-core/commands/parttool.c: Fix grammar.
91
	* grub-core/disk/ldm.c: Use consistent capitalisation for "LDM
92
	Embedding Partition".
93
94
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
95
96
	ARM64 support for grub-mkrescue.
97
98
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
99
100
	Install modinfo.sh to keep build information around.
101
102
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
103
104
	* grub-core/modinfo.sh.in: Add build config information.
105
106
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
107
108
	ARM64 grub-file and grub-mkconfig support.
109
110
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
111
112
	Remove leftover options defines.
113
114
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
115
116
	* include/grub/arm64/linux.h: Remove leftovers. Add missing prefixes.
117
118
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
119
120
	* grub-core/loader/arm64/linux.c: Add missing bracket.
121
122
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
123
124
	Add arm64-efi recognition to grub-file.
125
126
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
127
128
	Fix ia64-efi recognition in grub-file.
129
130
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
131
132
	Recognize raspberry pi kernel in grub-file.
133
134
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
135
136
	Enable cache on ARM U-Boot port.
137
138
	Without it the port is reidiculously slow.
139
140
2013-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
141
142
	Fix ARM cache maintainance.
143
144
	More code was converted from ASM to C for easier handling.
145
146
2013-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
147
148
	* grub-core/kern/arm/cache.c (grub_arm_disable_caches_mmu): Use v6
149
	algorithm on v5.
150
151
	Suggested by: Leif Lindholm.
152
153
2013-12-22  Andrey Borzenkov <arvidjaar@gmail.com>
154
155
	* util/grub-mkconfig.in: Fix Xen platform conditions.
156
157
2013-12-22  Andrey Borzenkov <arvidjaar@gmail.com>
158
159
	* util/grub-mkrescue.c: Split single help message string in several
160
	strings used in previous shell version.
161
162
2013-12-22  Leif Lindholm <leif.lindholm@linaro.org>
163
164
	Add arm64 Linux loader.
165
166
2013-12-22  Leif Lindholm <leif.lindholm@linaro.org>
167
168
	Add grub_fdt_create_empty_tree() and grub_fdt_set_prop64().
169
170
2013-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
171
172
	Add module loading and parsing boot time checkpoints.
173
174
2013-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
175
176
	* grub-core/loader/arm/linux.c: Pass arguments through on ATAG
177
	platforms.
178
179
2013-12-22  Lars Wendler <polynomial-c@gentoo.org>
180
181
	* util/grub-mkconfig.in: Skip non-executable files.
182
183
2013-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
184
185
	Workaround buggy timer in raspberry pie by using our own timer
186
	implementation.
187
188
2013-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
189
190
	* include/grub/arm/uboot/kernel.h (GRUB_KERNEL_MACHINE_HEAP_SIZE):
191
	Increase to 16 MiB to allow loading the whole memdisk.
192
193
2013-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
194
195
	Fix ARM Linux Loader on non-FDT platforms.
196
197
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
198
199
	* configure.ac: Choose link format based on host_os on emu.
200
201
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
202
203
	* grub-core/osdep/unix/getroot.c: Non-unix build fix.
204
205
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
206
207
	* grub-core/kern/emu/main.c: Build fix for emu.
208
209
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
210
211
	Build fixes for argp.h with older gcc.
212
213
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
214
215
	* util/grub-glue-efi.c: Use "universal binary" rather "fat binary"
216
	in strings.
217
218
	Suggested by: David Prévot.
219
220
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
221
222
	* include/grub/crypto.h (grub_crypto_xor): Fix cast-align warning.
223
224
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
225
226
	Enable -Wformat=2 if it's supported.
227
228
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
229
230
	* configure.ac: Add -Wmissing-include-dirs -Wmissing-prototypes
231
	-Wmissing-declarations if supported.
232
233
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
234
235
	* grub-core/commands/macbless.c (grub_mac_bless_inode): Pass inode as
236
	u32 as both HFS and HFS+ have 32-bit inodes.
237
238
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
239
240
	* include/grub/misc.h (grub_strtol): Fix overflow.
241
242
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
243
244
	* include/grub/term.h (grub_unicode_estimate_width): Use grub_size_t
245
	as return type in both conditionals.
246
247
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
248
249
	* include/grub/video.h (grub_video_rgba_color_rgb): Fix prototype
250
	to use uint8_t for color.
251
252
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
253
254
	* util/misc.c (grub_util_get_image_size): Check for overflow.
255
256
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
257
258
	* grub-core/disk/raid6_recover.c (grub_raid_block_mulx): Use grub_size_t
259
	for size.
260
261
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
262
263
	* grub-core/disk/lvm.c: Use grub_size_t for sizes and grub_ssize_t
264
	for pointer difference.
265
266
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
267
268
	* util/import_gcry.py: Skip sample keys.
269
270
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
271
272
	* util/misc.c (grub_qsort_strcmp): Don't discard const attribute.
273
274
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
275
276
	* configure.ac: Remove duplicate warning arguments.
277
278
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
279
280
	Add missing static qualifiers.
281
282
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
283
284
	Add missing includes.
285
286
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
287
288
	Inline printf templates when possible to enable format checking.
289
290
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
291
292
	* include/grub/crypto.h: Don't discard const attribute.
293
294
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
295
296
	* grub-core/net/bootp.c (grub_cmd_dhcpopt): Use snprintf where it
297
	was intended.
298
299
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
300
301
	* grub-core/lib/crypto.c: Don't discard const attribute.
302
303
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
304
305
	* grub-core/lib/disk.c: Fix potential overflow.
306
307
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
308
309
	* grub-core/lib/arg.c: Don't discard const attribute.
310
311
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
312
313
	* grub-core/kern/dl.c: Don't discard const attribute.
314
315
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
316
317
	* grub-core/kern/disk.c: Fix potential overflow.
318
319
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
320
321
	* conf/Makefile.common: Don't include non-existing directory
322
	grub-core/lib/libgcrypt-grub/include.
323
324
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
325
326
	Clarify several translatable messages.
327
328
2013-12-21  David Prévot  <david@tilapin.org>
329
330
	Correct some translatable strings.
331
332
2013-12-21  Colin Watson  <cjwatson@ubuntu.com>
333
334
	* util/grub-mkrescue.c: Rephrase mkrescue description.
335
336
2013-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
337
2013-12-21  Colin Watson  <cjwatson@ubuntu.com>
338
339
	Clarify several translatable messages.
340
341
2013-12-20  Colin Watson  <cjwatson@ubuntu.com>
342
343
	Be more verbose about some configure failures.
344
345
2013-12-20  Colin Watson  <cjwatson@ubuntu.com>
346
347
	Fix various build problems on GNU/Hurd.
348
349
	* grub-core/osdep/unix/getroot.c (strip_extra_slashes): Move inside
350
	!defined (__GNU__).
351
	(xgetcwd): Likewise.
352
	* include/grub/emu/hostdisk.h (grub_util_hurd_get_disk_info)
353
	[__GNU__]: Add prototype.
354
	* util/getroot.c (grub_util_biosdisk_get_grub_dev) [__GNU__]: Format
355
	long int using %ld rather than %d.
356
357
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
358
359
	* util/grub-install.c: Inform user about install platform.
360
361
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
362
363
	* configure.ac: Set version to 2.02~beta1.
364
365
2013-12-18  Allen Pais <allen.pais@oracle.com>
366
2013-12-18  Bob Picco <bob.picco@oracle.com>
367
368
	* grub-core/boot/sparc64/ieee1275/boot.S: Fix order of fields.
369
370
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
371
372
	Make grub_zlib_decompress handle incomplete chunks.
373
374
	Fixes squash4.
375
376
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
377
378
	* grub-core/Makefile.am: Don't attempt to export grub_bios_interrupt
379
	on i386-multiboot.
380
381
2013-12-18  Aleš Nesrsta  <starous@volny.cz>
382
383
	* grub-core/disk/usbms.c: Retry on unknown errors.
384
	Reuse the same tag on retries.
385
386
2013-12-18  Aleš Nesrsta  <starous@volny.cz>
387
388
	* grub-core/bus/usb/ehci.c: Fix handling of newborn transfers.
389
390
	Avoid confusing them with already completed transfers.
391
392
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
393
394
	Remove xen VFB.
395
396
	Due to XEN bug it prevents Linux boot. Remove it at least, until
397
	workaround is found.
398
399
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
400
401
	* po/exclude.pot: Add 2 missing excludes.
402
403
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
404
405
	Add missing license section in macbless.mod and macho.mod.
406
407
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
408
409
	Allow compilation without thumb-interwork as long as no thumb is
410
	involved or only thumb2 is used.
411
412
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
413
414
	Use -Wl,--no-relax rather than -mno-relax for uniformity.
415
416
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
417
418
	* INSTALL: Update comment as to why sparc64 clang isn't usable.
419
420
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
421
422
	Add __attribute__ ((sysv_abi)) only if it's really needed.
423
424
	Some compilers don't support it.
425
426
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
427
428
	* grub-core/lib/syslinux_parse.c: Declare timeout unsigned.
429
430
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
431
432
	Remove -Wold-style-definition.
433
434
	Not very useful and interaction of it with regexp depends on GCC
435
	version.
436
437
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
438
439
	Make grub_util_get_windows_path_real static.
440
441
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
442
443
	* grub-core/commands/fileXX.c: Silence cast-align.
444
	* grub-core/loader/i386/xen_fileXX.c: Likewise.
445
446
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
447
448
	* include/grub/efi/api.h (GRUB_EFI_ERROR_CODE): Use explicit cast
449
	rather than LL suffix.
450
451
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
452
453
	* include/grub/efi/api.h (PRIxGRUB_EFI_UINTN_T): Remove leftover.
454
455
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
456
457
	* grub-core/loader/arm/linux.c: Use common initrd functions.
458
459
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
460
461
	Decrease number of strings to translate.
462
463
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
464
465
	* grub-core/kern/arm/dl.c: Remove unnecessarry execution mode check.
466
467
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
468
469
	Mark strings for translation and add remaining ones to exclude list.
470
471
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
472
473
	* util/grub-file.c (main): Fix sizeof usage.
474
475
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
476
477
	Silence spurious warning.
478
479
2013-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
480
481
	Remove check_nt_hiberfil as it's been superseeded by file command.
482
483
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
484
485
	* docs/osdetect.cfg: Add isolinux config to detected OSes.
486
487
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
488
489
	Implement syslinux parser.
490
491
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
492
493
	* grub-core/commands/legacycfg.c: Use 32-bit Linux protocol on non-BIOS.
494
495
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
496
497
	Support cpuid --pae.
498
499
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
500
501
	Use AT keyboard on Yeeloong 3A.
502
503
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
504
505
	Add Yeeloong 3A reboot and halt.
506
507
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
508
509
	Add Radeon Yeeloong 3A support.
510
511
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
512
513
	Add bonito 3A support.
514
515
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
516
517
	* grub-core/loader/machoXX.c: Fix compilation on non-i386.
518
519
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
520
521
	* grub-core/loader/i386/xen_fileXX.c: Silence cast-align.
522
523
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
524
525
	* grub-core/loader/macho.c: Fix compilation on non-i386.
526
527
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
528
529
	Add missing format_arg attribute to check that printf with translated
530
	messages has proper arguments.
531
532
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
533
534
	Use grub_xasprintf to format translated error messages containing
535
	64-bit quantity.
536
537
2013-12-17  Jon McCune  <jonmccune@google.com>
538
539
	Fix double-free introduced by commit 33d02a42d64cf06cada1c389
540
541
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
542
543
	Unify message for unsupported relocation.
544
545
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
546
547
	Mark miscompile error for translation.
548
549
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
550
551
	Use %I64 and not %ll when using OS printf if compiling for windows.
552
553
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
554
555
	Update Mac code to match new register_efi prototype.
556
557
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
558
559
	Implement better integration with Mac firmware.
560
561
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
562
563
	* grub-core/loader/multiboot_mbi2.c: Implement special value for
564
	load_addr.
565
566
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
567
568
	Include serial module in default_payload.elf.
569
570
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
571
572
	Add explicit thumb interwork bx in asm files.
573
574
	Shouldn't matter for armv >= 5 but let's be safe.
575
576
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
577
578
	Implement Truecrypt ISO loader.
579
580
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
581
582
	* grub-core/lib/arg.c: Ensure at least a single space between commands.
583
584
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
585
586
	Implement grub_file tool and use it to implement generating of config
587
	in separate root.
588
589
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
590
591
	Change to v1 xen grants.
592
593
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
594
595
	* grub-core/lib/i386/xen/relocator.S: Fix hypercall ABI violation.
596
597
	GRUB relied on %ebx being preserved across hypercall which isn't true.
598
599
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
600
601
	* grub-core/lib/x86_64/xen/relocator.S: Fix hypercall ABI violation.
602
603
	GRUB relied on %rdi being preserved across hypercall which isn't true.
604
605
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
606
607
	Implement XEN VFB support.
608
609
2013-12-17  Vladimir Serbinenko  <phcoder@gmail.com>
610
611
	Remove grub_bios_interrupt on coreboot.
612
613
	It's not used currently and cannot be used safely currently.
614
615
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
616
617
	Update exclude.pot and mark few strings for translation.
618
619
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
620
621
	* util/grub-mkrescue.c: Fix incorrect file usage in fallback code.
622
623
	Reported by: Jon McCune
624
625
2013-12-16  Andrey Borzenkov <arvidjaar@gmail.com>
626
627
	* grub-core/osdep/linux/platform.c (grub_install_get_default_x86_platform):
628
	Add verbose information which firmware directories were tried.
629
630
2013-12-16  Andrey Borzenkov <arvidjaar@gmail.com>
631
632
	* grub-core/osdep/unix/exec.c (grub_util_exec_redirect_all): New
633
	function to optionally redirect all three standard descriptors.
634
	Redefine grub_util_exec, grub_util_exec_redirect and
635
	grub_util_exec_redirect_null to use it.
636
	* include/grub/emu/exec.h: Define it.
637
	* include/grub/osdep/exec_unix.h: Delete, it is unused.
638
	* grub-core/osdep/linux/platform.c (grub_install_get_default_x86_platform):
639
	Use grub_util_exec_redirect_all to redirect error to NULL.
640
641
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
642
643
	* grub-core/tests/sleep_test.c: Silence spurious warning.
644
645
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
646
647
	Make grub_xen_hypercall on i386 cdecl rather than stdcall to avoid
648
	linker trying to "fixup" the code.
649
650
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
651
652
	* grub-core/kern/x86_64/xen/startup.S: Align stack.
653
654
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
655
656
	Add support for converting PE+ to Elf64.
657
658
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
659
660
	* grub-core/commands/minicmd.c (grub_mini_cmd_dump): Handle LLP case.
661
662
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
663
664
	Remove practice of assigning random const pointers to device id.
665
666
	This is not required as cache code already checks driver id as well.
667
668
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
669
670
	* include/grub/x86_64/types.h: Define sizeof (long) as 4 when compiling
671
	with mingw.
672
673
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
674
675
	* include/grub/efi/api.h: Don't use call wrappers when compiled with
676
	mingw or cygwin as API already matches.
677
678
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
679
680
	* grub-core/lib/posix_wrap/errno.h: Undefine errno before redefining.
681
682
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
683
684
	* include/grub/efi/api.h: Define (u)intn_t based on pointer size and
685
	not on long.
686
687
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
688
689
	Handle X86_64_PC64 relocation.
690
691
	Those are generated by some cygwin compilers.
692
693
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
694
695
	Determine the need for mingw-related stubs at compile time rather than
696
	using not very significant $target_os.
697
698
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
699
700
	* grub-core/genmod.sh.in: Strip before converting to ELF as strip
701
	may not work with ELF.
702
703
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
704
705
	Use unix functions for temporary files and special files on cygwin.
706
707
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
708
709
	Define functions explicitly rather than using --defsym in tests
710
	whenever possible. Respect locality in remaining cases.
711
712
2013-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
713
714
	* grub-core/genmoddep.awk: Remove explicit getline < /dev/stdin.
715
716
2013-12-15  Andrey Borzenkov <arvidjaar@gmail.com>
717
718
	* grub-core/osdep/windows/platform.c (grub_install_register_efi): Handle
719
	unlikely errors when getting EFI variables and make exhaustive search
720
	for all BootNNNN variables to find matching one.
721
722
2013-12-15  Ian Campbell  <ijc@hellion.org.uk>
723
724
	* grub-core/kern/uboot/init.c: Fix units of uboot timer.
725
726
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
727
728
	New functional test for sleep function.
729
730
	This test allows to check sleep without qemu. Keep qemu version as
731
	well as functional test won't notice if all clocks are going too fast
732
	or too slow.
733
734
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
735
736
	Add explicit sysv_abi on amd64 asm routines.
737
738
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
739
740
	* grub-core/commands/efi/lsefisystab.c: Use %lld to show
741
	num_table_entries.
742
743
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
744
745
	* include/grub/test.h: Use gnu_printf rather than printf on GRUB
746
	functions.
747
748
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
749
750
	* grub-core/loader/i386/linux.c: Use grub_addr_t rather than long when
751
	appropriate.
752
753
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
754
755
	* grub-core/loader/i386/linux.c: Use %p rather than %lx for pointers.
756
757
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
758
759
	* grub-core/kern/elfXX.c: Use grub_addr_t rather than long when
760
	appropriate.
761
762
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
763
764
	* grub-core/disk/loopback.c: Use sequential IDs rather than pointer.
765
766
	In case of quick removal of loopback and adding another one it may
767
	get same ID, confusing the cache system.
768
769
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
770
771
	* grub-core/commands/acpi.c: Use grub_addr_t rather than long when
772
	appropriate.
773
774
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
775
776
	* grub-core/kern/i386/coreboot/cbtable.c: Use char * arithmetic rather
777
	than converting to long.
778
779
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
780
781
	* grub-core/disk/cryptodisk.c: Rename "n" to "last_cryptodisk_id".
782
783
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
784
785
	* util/grub-mkimagexx.c (relocate_addresses): Display offset rather
786
	than almost useless pointer.
787
788
2013-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
789
790
	Add gcc_struct to all packed structures when compiling with mingw.
791
792
	Just "packed" doesn't always pack the way we expect.
793
794
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
795
796
	* include/grub/i386/coreboot/lbio.h: Add missing attribute (packed).
797
798
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
799
800
	* util/grub-pe2elf.c: Fix handling of .bss.
801
802
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
803
804
	Implement windows flavour of EFI install routines.
805
806
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
807
808
	* conf/Makefile.extra-dist: Adjust path to conf/i386-cygwin-img-ld.sc.
809
810
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
811
812
	Change grub_install_register_efi interface to pass GRUB device.
813
814
	This allows grub_install_register_efi to request partition info
815
	directly.
816
817
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
818
819
	Workaround cygwin bug when using \\?\Volume{GUID} syntax.
820
821
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
822
823
	Do not use TCHAR string functions as they are not available on cygwin.
824
825
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
826
827
	Workaround windows bug when querying EFI system partition parameters.
828
829
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
830
831
	* grub-core/kern/i386/qemu/init.c (resource): Decrease struct size
832
	by using bitfields.
833
834
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
835
836
	* grub-core/boot/i386/qemu/boot.S: Add missing EXT_C.
837
838
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
839
840
	Make i386-* other than i386-pc compileable under cygwin.
841
842
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
843
844
	Fix definition of grub_efi_hard_drive_device_path. Take care that
845
	existing code would work even if by some reason bogus definition is
846
	used by EFI implementations.
847
848
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
849
850
	* grub-core/osdep/windows/hostdisk.c: Fix cygwin compilation.
851
852
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
853
854
	* grub-core/osdep/windows/blocklist.c: Add missing cast in printf
855
	invocation.
856
857
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
858
859
	* util/config.c: Remove trailing newline from distributor in simple
860
	parsing.
861
862
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
863
864
	* include/grub/efi/api.h: Rename protocol and interface to avoid
865
	conflict.
866
867
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
868
869
	* .gitignore: Add .exe variants. Add missing files. Remove few outdated
870
	entries.
871
872
2013-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
873
874
	* grub-core/osdep/exec.c: Use unix version on cygwin.
875
876
2013-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
877
878
	Implement multiboot2 EFI BS specification.
879
880
2013-12-11  Vladimir Serbinenko  <phcoder@gmail.com>
881
882
	* grub-core/normal/charset.c: Fix premature line wrap and crash.
883
	Crash happened only in some cases like a string starting at the
884
	half of the screen of same length.
885
886
2013-12-11  Vladimir Serbinenko  <phcoder@gmail.com>
887
888
	* include/grub/efiemu/efiemu.h: Sync configuration table declaration
889
	with EFI counterpart.
890
891
2013-12-11  Vladimir Serbinenko  <phcoder@gmail.com>
892
893
	Propagate the EFI commits to x86-efi specific parts.
894
895
2013-12-11  Vladimir Serbinenko  <phcoder@gmail.com>
896
897
	* grub-core/commands/efi/lssal.c: Fix terminating condition.
898
899
2013-12-11  Vladimir Serbinenko  <phcoder@gmail.com>
900
901
	Introduce grub_efi_packed_guid and use it where alignment is not
902
	guaranteed.
903
904
2013-12-11  Vladimir Serbinenko  <phcoder@gmail.com>
905
906
	* include/grub/efi/api.h (grub_efi_device_path): Define length as
907
	unaligned u16 rather than u8[2].
908
909
2013-12-11  Vladimir Serbinenko  <phcoder@gmail.com>
910
911
	* grub-core/kern/ia64/dl.c (grub_arch_dl_relocate_symbols): Add checks
912
	for relocation range.
913
914
2013-12-11  Vladimir Serbinenko  <phcoder@gmail.com>
915
916
	* grub-core/kern/ia64/dl.c (grub_arch_dl_relocate_symbols): Handle
917
	non-function pcrel21b relocation. It happens with .text.unlikely
918
	section.
919
920
2013-12-10  Leif Lindholm <leif.lindholm@linaro.org>
921
922
	* make MAX_USABLE_ADDRESS platform-specific
923
	* grub-core/kern/efi/mm.c: add Vladimir's new BYTES_TO_PAGES_DOWN macro.
924
925
2013-12-10  Leif Lindholm <leif.lindholm@linaro.org>
926
927
	* grub-core/lib/fdt.c: change memcpy => grub_memcpy
928
929
2013-12-09  Jon McCune <jonmccune@google.com>
930
931
	* Add --no-rs-codes flag to optionally disable reed-solomon codes
932
	in grub-install and grub-bios-setup for x86 BIOS targets.
933
934
2013-12-09  Vladimir Serbinenko  <phcoder@gmail.com>
935
936
	Add missing compile and link options for sparc64-emu.
937
938
2013-12-09  Vladimir Serbinenko  <phcoder@gmail.com>
939
940
	Implement sparc64 trampolines (needed for sparc64-emu).
941
942
2013-12-09  Vladimir Serbinenko  <phcoder@gmail.com>
943
944
	* grub-core/kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Check
945
	range of R_SPARC_HI22.
946
	Implement R_SPARC_LM22.
947
948
2013-12-09  Vladimir Serbinenko  <phcoder@gmail.com>
949
950
	* grub-core/kern/powerpc/dl_helper.c (grub_arch_dl_get_tramp_got_size):
951
	Do not explicitly check for symbol table as it's already checked in
952
	platform-independent layer.
953
954
2013-12-09  Vladimir Serbinenko  <phcoder@gmail.com>
955
956
	* grub-core/kern/emu/cache.c [__ia64__]: Use our cache cleaning routine
957
	on ia64 as __clear_cache is a dummy on ia64.
958
959
2013-12-09  Vladimir Serbinenko  <phcoder@gmail.com>
960
961
	* grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size):
962
	Do not explicitly check for symbol table as it's already checked in
963
	platform-independent layer.
964
965
2013-12-09  Colin Watson  <cjwatson@ubuntu.com>
966
967
	* util/grub-mkconfig.in: Add missing newline to output.
968
1.15.17 by Colin Watson
Import upstream version 2.00+20131208
969
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
970
971
	* grub-core/kern/ia64/efi/init.c (grub_arch_sync_caches): Move to ...
972
	* grub-core/kern/ia64/cache.c (grub_arch_sync_caches): ... here.
973
974
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
975
976
	* grub-core/kern/emu/main.c: Silence missing prototypes to allow emu
977
	compilation with GCC <= 4.2.
978
	* grub-core/kern/emu/argp_common.c: Likewise.
979
980
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
981
982
	* include/grub/kernel.h [__sparc__]: Restrict sparc64-ieee1275 to
983
	right platform rather than leaking to sparc64-emu.
984
985
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
986
987
	* grub-core/osdep/windows/emuconsole.c: Remove unsigned comparison >= 0.
988
	But ensure that the variables in question are indeed unsigned.
989
990
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
991
992
	* grub-core/kern/emu/lite.c: Add missing include of ../ia64/dl_helper.c.
993
994
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
995
996
	Remove grub_memalign on emu.
997
998
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
999
1000
	* grub-core/kern/ia64/efi/init.c: Fix alignment code so it doesn't
1001
	truncate incomplete lines but instead flushes them.
1002
1003
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
1004
1005
	Move OS-dependent mprotect for module loading to grub-core/osdep/*/dl.c
1006
	and implement windows variant.
1007
1008
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
1009
1010
	Fix mips-emu compilation.
1011
1012
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
1013
1014
	* configure.ac: Check for freetype library usability.
1015
1016
2013-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
1017
1018
	Make arm-emu work.
1019
1020
2013-12-07  Vladimir Serbinenko  <phcoder@gmail.com>
1021
1022
	* util/grub-mkfont.c: Replace stpcpy with grub_stpcpy.
1023
1024
2013-12-07  Andrey Borzenkov <arvidjaar@gmail.com>
1025
1026
	* docs/grub.texi (Environment): Update color_normal and color_highlight
1027
	defaults (light-gray instead of white).
1028
1029
2013-12-07  Andrey Borzenkov <arvidjaar@gmail.com>
1030
1031
	* grub-core/normal/main.c (INIT): Set default color to light-gray
1032
	to match GRUB_TERM_DEFAULT_NORMAL_COLOR (i.e. rescue mode), Linux
1033
	and apparently BIOS defaults.
1034
1035
2013-12-07  Vladimir Serbinenko  <phcoder@gmail.com>
1036
1037
	Transform -C option to grub-mkstandalone to --core-compress available
1038
	in all grub-install flavours.
1039
1040
2013-12-07  Vladimir Serbinenko  <phcoder@gmail.com>
1041
1042
	Merge GRUBFS and GRUB_FS variables.
1043
1044
2013-12-07  Andrey Borzenkov <arvidjaar@gmail.com>
1045
1046
	Revert commit 69ca97c820, it caused failures when using OS device name
1047
	in grub-install. Instead just strip off parenthesis in grub-install
1048
	if (hdX) was passed.
1049
1050
2013-12-07  Andrey Borzenkov <arvidjaar@gmail.com>
1051
1052
	* util/grub-install.c (push_partmap_module): Add helper to convert
1053
	partmap names to module names and use it in probe_mods(). Fixes
1054
	failure to find partmap modules in diskfilter case.
1055
1056
2013-12-07  Vladimir Serbinenko  <phcoder@gmail.com>
1057
1058
	* configure.ac: Make unifont mandatory on coreboot.
1059
1060
2013-12-07  Vladimir Serbinenko  <phcoder@gmail.com>
1061
1062
	* configure.ac: Skip unifont 6.3 pcf and bdf.
1063
1064
2013-12-07  Vladimir Serbinenko  <phcoder@gmail.com>
1065
1066
	* Makefile.am: Remove partial font files if generation failed.
1067
1068
2013-12-07  Andrey Borzenkov <arvidjaar@gmail.com>
1069
1070
	* util/misc.c (grub_qsort_strcmp): Add qsort helper function to sort
1071
	strings.
1072
	* include/grub/util/misc.h: Define it ...
1073
	* util/grub-install.c (device_map_check_duplicates): ... and use it.
1074
1075
2013-12-07  Andrey Borzenkov <arvidjaar@gmail.com>
1076
1077
	* util/grub.d/30_os-prober.in: Fix use of grub-probe instead of
1078
	${grub_probe}.
1079
1080
2013-12-06  Vladimir Serbinenko  <phcoder@gmail.com>
1081
1082
	Don't add -mlong-calls when compiling with clang.
1083
1084
2013-12-06  Vladimir Serbinenko  <phcoder@gmail.com>
1085
1086
	* configure.ac: Fix a typo.
1087
1088
2013-12-06  Vladimir Serbinenko  <phcoder@gmail.com>
1089
1090
	Revamp relocation handling.
1091
1092
	Move more code to common dl.c. Add missing veneers for arm and arm64.
1093
	Decreases kernel size by 70 bytes on i386-pc (40-50 compressed)
1094
1095
2013-12-05  Vladimir Serbinenko  <phcoder@gmail.com>
1096
1097
	* util/grub-mkimagexx.c: Fix reloc section generation for ia64.
1098
1099
2013-12-05  Mike Gilbert  <floppym@gentoo.org>
1100
1101
	* INSTALL: Raise minimum python version to 2.6.
1102
	* gentpl.py: Use python3-style print function.
1103
1104
2013-12-05  Vladimir Serbinenko  <phcoder@gmail.com>
1105
1106
	* util/grub-install.c: Mention Boot* variable.
1107
1108
2013-12-05  Colin Watson  <cjwatson@ubuntu.com>
1109
1110
	* grub-core/osdep/linux/hostdisk.c
1111
	(grub_util_find_partition_start_os): Initialise start to avoid
1112
	spurious compiler warning.
1113
1114
2013-12-05  Colin Watson  <cjwatson@ubuntu.com>
1115
1116
	On Linux, read partition start offsets from sysfs if possible, to
1117
	cope with block device drivers that don't implement HDIO_GETGEO.
1118
	Fixes Ubuntu bug #1237519.
1119
1120
	* grub-core/osdep/linux/hostdisk.c (sysfs_partition_path): New
1121
	function.
1122
	(sysfs_partition_start): Likewise.
1123
	(grub_util_find_partition_start_os): Try sysfs_partition_start
1124
	before HDIO_GETGEO.
1125
1126
2013-12-05  Leif Lindholm  <leif.lindholm@linaro.org>
1127
1128
	* grub-core/kern/fdt.c: Update struct size when adding node.
1129
1130
2013-12-05  Vladimir Serbinenko  <phcoder@gmail.com>
1131
1132
	Handle unaligned .bss on sparc64.
1133
1134
	Current code improperly assumes that both __bss_start and _end are
1135
	aligned to 8-bytes. Eliminating this assumption and explicitly align
1136
	modules.
1137
1138
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1139
1140
	* grub-core/boot/sparc64/ieee1275/boot.S [CDBOOT]: Move scratchpad
1141
	so it doesn't land in the middle of loaded image.
1142
1143
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1144
1145
	* configure.ac: Move all warning options that may be absent in
1146
	gcc >= 3.1 to optional.
1147
1148
	Note: while this allows to compile with older GCC, official requirements
1149
	remain the same and no support for older GCC.
1150
1151
2013-12-04  Colin Watson  <cjwatson@ubuntu.com>
1152
1153
	Copying the themes directory in grub-shell isn't
1154
	parallel-test-friendly and breaks on the second test when the source
1155
	directory is read-only (as in "make distcheck").  Instead, add a
1156
	hidden --themes-directory option to grub-mkrescue et al, and use it
1157
	in grub-shell.
1158
1159
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1160
1161
	* conf/Makefile.common (CFLAGS_GNULIB): Remove -Wno-old-style-definition
1162
	as it's no longer necessarry.
1163
1164
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1165
1166
	* configure.ac: Allow compilation with older GCC for ARM.
1167
1168
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1169
1170
	* configure.ac: Add -no-integrated-as if {addme|ame} isn't supported.
1171
	* INSTALL: Note that GRUBwas successfully compiled with clang 3.2 for
1172
	ppc.
1173
1174
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1175
1176
	* grub-core/kern/emu/main.c: Ignore missing prototype for main.
1177
1178
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1179
1180
	Pass font config to config.h and not by TARGET_CFLAGS as adding
1181
	arguments doesn't work if TARGET_CFLAGS is specified on command
1182
	line.
1183
1184
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1185
1186
	* configure.ac: Add -Wvla if compiler supports it.
1187
1188
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1189
1190
	* grub-core/osdep/windows/emuconsole.c (grub_console_putchar):
1191
	Remove variable length arrays.
1192
	* grub-core/term/efi/console.c (grub_console_putchar): Likewise.
1193
1194
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1195
1196
	* grub-core/kern/i386/qemu/init.c: Remove variable length arrays.
1197
1198
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1199
1200
	* include/grub/types.h: Declare all byteswaps as inline functions
1201
	except compile-time ones.
1202
1203
	Solves variable shadowing in constructions like
1204
	cpu_to_le (le_to_cpu(x) + 1).
1205
1206
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1207
1208
	* grub-core/kern/efi/efi.c: Remove variable length arrays.
1209
1210
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1211
1212
	* grub-core/kern/uboot/init.c (uboot_timer_ms): Fix overflow after 71
1213
	minutes.
1214
1215
2013-12-04  Vladimir Serbinenko  <phcoder@gmail.com>
1216
1217
	* grub-core/disk/ieee1275/ofdisk.c: Remove variable length arrays.
1218
	* grub-core/net/drivers/ieee1275/ofnet.c: Likewise.
1219
1220
2013-12-03  Colin Watson  <cjwatson@ubuntu.com>
1221
1222
	* grub-core/Makefile.core.def (setjmp): Distribute
1223
	lib/arm64/setjmp.S.
1224
1225
2013-12-03  Colin Watson  <cjwatson@ubuntu.com>
1226
1227
	Add a new timeout_style environment variable and a corresponding
1228
	GRUB_TIMEOUT_STYLE configuration key for grub-mkconfig.  This
1229
	controls hidden-timeout handling more simply than the previous
1230
	arrangements, and pressing any hotkeys associated with menu entries
1231
	during the hidden timeout will now boot the corresponding menu entry
1232
	immediately.
1233
1234
	GRUB_HIDDEN_TIMEOUT=<non-empty> + GRUB_TIMEOUT=<non-zero> now
1235
	generates a warning, and if it shows the menu it will do so as if
1236
	the second timeout were not present.  Other combinations are
1237
	translated into reasonable equivalents.
1238
1239
	Based loosely on work by Franz Hsieh.  Fixes Ubuntu bug #1178618.
1240
1241
2013-12-02  Vladimir Serbinenko  <phcoder@gmail.com>
1242
1243
	* util/config.c: Add missing pointer adjustment.
1244
	Reported by: qwertial
1245
1246
2013-11-30  Andrey Borzenkov <arvidjaar@gmail.com>
1247
1248
	* grub-core/kern/arm64/dl_helper.c: Include grub/arm64/reloc.h
1249
	directly, not via `cpu' link, to fix libgrub.pp generation.
1250
1251
2013-11-30  Leif Lindholm <leif.lindholm@linaro.org>
1252
1253
	New port arm64-efi.
1254
1255
2013-11-30  Andrey Borzenkov <arvidjaar@gmail.com>
1256
1257
	* docs/grub.texi (sleep): Document exit codes.
1258
1259
2013-11-30  Vladimir Serbinenko  <phcoder@gmail.com>
1260
1261
	Ensure that -mno-unaligned-access or some equivalent option is used.
1262
1263
2013-11-30  Vladimir Serbinenko  <phcoder@gmail.com>
1264
1265
	* grub-core/lib/libgcrypt/mpi/longlong.h: Fix compilation error with
1266
	-march=armv3.
1267
1268
2013-11-30  Vladimir Serbinenko  <phcoder@gmail.com>
1269
1270
	Remove leftover GRUB_IA64_DL_TRAMP_SIZE.
1271
1272
2013-11-29  Colin Watson  <cjwatson@ubuntu.com>
1273
1274
	* docs/grub-dev.texi (Font Metrics): Exclude @image command from DVI
1275
	builds, since we don't have an EPS version of font_char_metrics.png.
1276
	Add leading dot to image extension per the Texinfo documentation.
1277
1278
2013-11-29  Colin Watson  <cjwatson@ubuntu.com>
1279
1280
	* util/grub-gen-asciih.c: Include FT_SYNTHESIS_H rather than
1281
	<freetype/ftsynth.h>, fixing build with FreeType 2.5.1.
1282
	* util/grub-gen-widthspec.c: Likewise.
1283
	* util/grub-mkfont.c: Likewise.
1284
1285
2013-11-29  Andrey Borzenkov <arvidjaar@gmail.com>
1286
1287
	* util/grub-setup.c (main): Move parsing of (hdX) syntax to ...
1288
	* util/setup.c (SETUP): ... here. Fixes regression: grub-install
1289
	failed to install on (hdX).
1290
	* util/grub-setup.c (get_device_name): Remove, not needed after
1291
	above change.
1292
1293
2013-11-29  Vladimir Serbinenko  <phcoder@gmail.com>
1294
1295
	* grub-core/kern/emu/hostfs.c (is_dir): Remove variable length arrays.
1296
1297
2013-11-29  Vladimir Serbinenko  <phcoder@gmail.com>
1298
1299
	* util/grub-fstest.c: Remove variable length arrays.
1300
1301
2013-11-29  Vladimir Serbinenko  <phcoder@gmail.com>
1302
1303
	* grub-core/osdep/linux/ofpath.c: Check return value of read.
1304
1305
2013-11-29  Vladimir Serbinenko  <phcoder@gmail.com>
1306
1307
	* util/mkimage.c (grub_install_generate_image): Use grub_crypto_hash for
1308
	computing crc32 rather than handling with md fundtions directly.
1309
1310
2013-11-29  Vladimir Serbinenko  <phcoder@gmail.com>
1311
1312
	* util/mkimage.c (grub_install_generate_image): Use grub_crypto_hash for
1313
	checking fwstart.img rather than md fundtions directly.
1314
1315
2013-11-29  Vladimir Serbinenko  <phcoder@gmail.com>
1316
1317
	* util/grub-mkrescue.c (main): Check that fread succeeded.
1318
1319
2013-11-29  Vladimir Serbinenko  <phcoder@gmail.com>
1320
1321
	* conf/Makefile.common: Remove -mexplicit-relocs and
1322
	-DUSE_ASCII_FALLBACK on yeeloong.
1323
1324
	-DUSE_ASCII_FALLBACK is already added by font snippets.
1325
	-mexplicit-relocs isn't needed is compiler/assemblera are
1326
	configured properly.
1327
	If they're not we shouldn't attempt to fix it by ourselves.
1328
	Binary compare between before and after shows no difference.
1329
1330
2013-11-29  Vladimir Serbinenko  <phcoder@gmail.com>
1331
1332
	* grub-core/Makefile.core.def: Remove libgnulib.a and use its
1333
	sources in dependencies directly.
1334
1335
	This was the only instance of "library" in core config. A bug was
1336
	reported that -fno-stack-protector wasn't passed to it. Instead of
1337
	figuring out why it failed just remove this construction used
1338
	needlessly.
1339
1340
2013-11-29  Vladimir Serbinenko  <phcoder@gmail.com>
1341
1342
	* grub-core/osdep/unix/password.c (grub_password_get): Check that
1343
	fgets succeeded.
1344
1345
2013-11-27  Francesco Lavra  <francescolavra.fl@gmail.com>
1346
1347
	* docs/grub.texi (ls): Fix command description in case of a device name
1348
	passed as argument.
1349
1350
2013-11-27  Vladimir Serbinenko  <phcoder@gmail.com>
1351
1352
	Eliminate variable length arrays in grub_vsnprintf_real.
1353
1354
	A bit tricky because this function has to continue to work without
1355
	heap for short strings. Fixing prealloc to 32 arguments is reasonable
1356
	but make all stack references use 32-bit offset rather than 8-bit one.
1357
	So split va_args preparsing to separate function and put the prealloc
1358
	into the caller.
1359
1360
2013-11-27  Vladimir Serbinenko  <phcoder@gmail.com>
1361
1362
	Introduce grub_util_file_sync and use it instead of fsync(fileno(f)).
1363
	Fixes build for windows.
1364
1365
2013-11-27  Vladimir Serbinenko  <phcoder@gmail.com>
1366
1367
	* gentpl.py: Don't generate platform-dependent conditionals for
1368
	platform-independent targets.
1369
1370
2013-11-27  Colin Watson  <cjwatson@ubuntu.com>
1371
1372
	* grub-core/osdep/unix/exec.c (grub_util_exec_redirect): Remove
1373
	references to mdadm from otherwise generic code.
1374
	(grub_util_exec_pipe): Likewise.
1375
	(grub_util_exec_pipe_stderr): Likewise.
1376
	* grub-core/osdep/unix/getroot.c (grub_util_pull_lvm_by_command):
1377
	This function calls vgs, not mdadm; adjust variable names
1378
	accordingly.
1379
1380
2013-11-27  Colin Watson  <cjwatson@ubuntu.com>
1381
1382
	Generate Makefile.*.am directly from gentpl.py, eliminating the use
1383
	of Autogen.  The Autogen definitions files remain intact as they
1384
	offer a useful abstraction.
1385
1386
2013-11-27  Colin Watson  <cjwatson@ubuntu.com>
1387
1388
	Add grub_util_disable_fd_syncs call to turn grub_util_fd_sync calls
1389
	into no-ops, and use it in programs that copy files but do not need
1390
	to take special care to sync writes (grub-mknetdir, grub-rescue,
1391
	grub-mkstandalone).
1392
1393
2013-11-26  Colin Watson  <cjwatson@ubuntu.com>
1394
1395
	* tests/util/grub-fs-tester.in: Execute xorriso from $PATH rather
1396
	than hardcoding /usr/local/bin/xorriso.
1397
1398
2013-11-26  Vladimir Serbinenko  <phcoder@gmail.com>
1399
1400
	Add PCI command activation to all PCI drivers as required for coreboot
1401
	and maybe some other firmwares.
1402
1403
2013-11-26  Vladimir Serbinenko  <phcoder@gmail.com>
1404
1405
	* grub-core/Makefile.am: Reduce gratuituous differences between Apple
1406
	and non-Apple variants of efiemu compile.
1407
1408
2013-11-25  Andrey Borzenkov <arvidjaar@gmail.com>
1409
1410
	*  configure.ac: Add explicit check for linking format of
1411
	efiemu64; save it as EFIEMU64_LINK_FORMAT.
1412
	* grub-core/Makefile.am: Use EFIEMU64_LINK_FORMAT instead of
1413
	hardcoding linking format.
1414
1415
2013-11-25  Vladimir Serbinenko  <phcoder@gmail.com>
1416
1417
	* util/grub-mknetdir.c: Look for platform directories under pkglibdir
1418
	and not pkgdatadir.
1419
1420
2013-11-25  Colin Watson  <cjwatson@ubuntu.com>
1421
2013-11-25  Vladimir Serbinenko  <phcoder@gmail.com>
1422
1423
	Add a --locale-directory option to grub-install and related tools.
1424
1425
	* include/grub/util/install.h (GRUB_INSTALL_OPTIONS): Add
1426
	--locale-directory option.
1427
	(enum grub_install_options): Add
1428
	GRUB_INSTALL_OPTIONS_LOCALE_DIRECTORY.
1429
	* util/grub-install-common.c (grub_install_help_filter): Handle
1430
	GRUB_INSTALL_OPTIONS_LOCALE_DIRECTORY.
1431
	(grub_install_parse): Likewise.
1432
	(get_localedir): New function to check for a user-provided option
1433
	before trying grub_util_get_localedir.
1434
	(copy_locales): Use get_localedir rather than
1435
	grub_util_get_localedir.  Handle differing locale directory layouts.
1436
	(grub_install_copy_files): Likewise.
1437
1438
2013-11-25  Vladimir Serbinenko  <phcoder@gmail.com>
1439
1440
	* grub-core/osdep/unix/platform.c (get_ofpathname): Trim ending newline.
1441
	Don't rely on PATH_MAX.
1442
1443
2013-11-25  Vladimir Serbinenko  <phcoder@gmail.com>
1444
1445
	* grub-core/genmoddep.awk: Use more portable && rather than and.
1446
1447
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1448
1449
	* grub-core/kern/i386/pc/startup.S [__APPLE__]: Create _edata by placing
1450
	an object after data. While it doesn't seem right solution, it
1451
	works well enough and OSX isn't main compilation platform.
1452
1453
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1454
1455
	* gentpl.py: Add -ed2016 in order to make objconv accept our binary.
1456
	While it doesn't seem right solution, it works well enough and
1457
	OSX isn't main compilation platform.
1458
1459
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1460
1461
	* configure.ac: Add -static to LDFLAGS when using apple linker to
1462
	prevent it from pulling in dynamic linker.
1463
1464
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1465
1466
	Apple assembly doesn't handle symbol arithmetic well. So define an
1467
	offset symbol in boot.S and use it.
1468
1469
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1470
1471
	Apple assembly doesn't handle symbol arithmetic well. So instead
1472
	of getting addres of kernel_sector + 4 define kernel_sector_high.
1473
	It also makes code more readable.
1474
1475
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1476
1477
	With Apple assembly in .macro environvemnt you have to use $$ instead
1478
	of $. So introduce new preprocessor macro MACRO_DOLLAR(x) which expands
1479
	to $$x on Apple and to $x on everything else.
1480
1481
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1482
1483
	* grub-core/Makefile.am: Use correct TARGET_OBJCONV rather than
1484
	OBJCONV.
1485
1486
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1487
1488
	* grub-core/gdb/i386/machdep.S: Use xorl %eax, %eax on both Apple
1489
	and non-Apple. This instruction is shorter and faster,
1490
	so no reason not to use it on both.
1491
1492
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1493
1494
	* grub-core/lib/reed_solomon.c: Use section _text, _text rather than
1495
	.text when compiling for Apple.
1496
1497
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1498
1499
	* grub-core/term/arc/console.c: Add missing cast to silence warning.
1500
1501
2013-11-24  Vladimir Serbinenko  <phcoder@gmail.com>
1502
1503
	* grub-core/boot/i386/pc/boot.S: Fix floppy probe. Due to missing
1504
	%dx restore the probe worked on non-existant drive. Reorganize the
1505
	code a little bit to free 2 bytes necessary for push/pop.
1506
1507
2013-11-23  Vladimir Serbinenko  <phcoder@gmail.com>
1508
1509
	* grub-core/kern/mips/arc/init.c (grub_machine_get_bootlocation):
1510
	Add missing cast to silence warning.
1511
1512
2013-11-23  Keshav Padram Amburay <the.ridikulus.rat@gmail.com>
1513
1514
	* util/grub-install.c (update_nvram): Support --no-nvram flag
1515
	for EFI targets.
1516
1517
2013-11-23  Vladimir Serbinenko  <phcoder@gmail.com>
1518
1519
	* INSTALL: Add note about sparc64/ia64 with clang (unsupported).
1520
1521
2013-11-23  Vladimir Serbinenko  <phcoder@gmail.com>
1522
1523
	* util/garbage-gen.c: Add missing include of sys/time.h.
1524
1525
2013-11-23  Vladimir Serbinenko  <phcoder@gmail.com>
1526
1527
	Don't add -mflush-func if it's not supported by compiler.
1528
1529
2013-11-23  Vladimir Serbinenko  <phcoder@gmail.com>
1530
1531
	Move common BIOS/coreboot memory map declarations to
1532
	include/grub/i386/memory_raw.h and eliminate duplicate declarations.
1533
1534
2013-11-22  Andrey Borzenkov <arvidjaar@gmail.com>
1535
1536
	* Makefile.am: Add util/garbage-gen.c to EXTRA_DIST.
1537
1538
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1539
1540
	* INSTALL: Document why older clang versions aren't appropriate.
1541
1542
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1543
1544
	* INSTALL: Document about clang for mips.
1545
1546
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1547
1548
	* grub-core/lib/libgcrypt/mpi/longlong.h: Use C version with mips
1549
	clang.
1550
1551
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1552
1553
	Add *-xen to the list of grub-install-common platforms.
1554
1555
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1556
1557
	* configure.ac: Do not enforce -mcmodel=large. It's not necessarry with
1558
	3 last commits.
1559
1560
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1561
1562
	* grub-core/kern/xen/init.c: Do not map more pages than we can address.
1563
1564
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1565
1566
	* grub-core/kern/efi/mm.c: Limit allocations to 2GiB when not compiling
1567
	with -mcmodel=large.
1568
1569
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1570
1571
	* grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Add
1572
	range-checking for 32-bit quantities.
1573
1574
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1575
1576
	* configure.ac: Compile with -fPIC when compiling with clang on
1577
	mips.
1578
1579
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1580
1581
	* configure.ac: Add -no-integrated-as on mips(el) to TARGET_CCASFLAGS
1582
	when compiling with clang.
1583
1584
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1585
1586
	clang emits calls to abort () under some unknown conditions.
1587
	Export abort () when compiling with clang.
1588
1589
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1590
1591
	* docs/grub-dev.texi: Document stack and heap sizes.
1592
1593
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1594
1595
	* include/grub/i386/pc/memory.h: Decrease
1596
	GRUB_MEMORY_MACHINE_SCRATCH_SIZE and increase
1597
	GRUB_MEMORY_MACHINE_PROT_STACK_SIZE.
1598
	The binary doesn't change (checked). It's more to better reflect actual
1599
	usage.
1600
1601
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1602
1603
	* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Ensure
1604
	at compile time that enough of scratch size is available.
1605
1606
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1607
1608
	* grub-core/kern/x86_64/efi/callwrap.S: Fix stack alignment.
1609
	Previously we misaligned stack by 8 in startup.S and compensated
1610
	for it in callwrap.S. According to ABI docs (EFI and sysv amd64)
1611
	right behaviour is to align stack in startup.S and keep it aligned
1612
	in callwrap.S. startup.S part was committed few commits before. This
1613
	takes care of callwrap.S.
1614
	Reported by: Gary Lin.
1615
1616
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1617
1618
	* grub-core/boot/mips/startup_raw.S: Handle the case of gap between
1619
	.data and .bss. May happen if compiler and assembly use different
1620
	alignment.
1621
1622
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1623
1624
	On MIPS handle got16 relocations to local symbols in an ABI-compliant
1625
	way.
1626
1627
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1628
1629
	Add support for a new magic symbol _gp_disp on mips to handle PIC
1630
	binaries.
1631
1632
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1633
1634
	Use $t9 for indirect calls from asm to C as PIC ABI requires.
1635
1636
2013-11-22  Vladimir Serbinenko  <phcoder@gmail.com>
1637
1638
	Remove -march=mips3 from TARGET_CCASFLAGS as it creates linking problem
1639
	when rest of GRUB is compiled for hisher stepping. Instead use
1640
	.set mips3/.set mips1 around cache and sync opcodes.
1641
1642
2013-11-21  Vladimir Serbinenko  <phcoder@gmail.com>
1643
1644
	Unify GOT/trampoline handling between PPC, MIPS and IA64 as they
1645
	do essentially the same thing, do it in similar way.
1646
1647
2013-11-21  Colin Watson  <cjwatson@ubuntu.com>
1648
1649
	* util/grub-mkrescue.c (main): If a source directory is not
1650
	specified, read platform-specific files from subdirectories of
1651
	pkglibdir, not pkgdatadir.
1652
1653
2013-11-21  Colin Watson  <cjwatson@ubuntu.com>
1654
1655
	* grub-core/normal/progress.c: Remove unused file.
1656
1657
2013-11-20  Vladimir Serbinenko  <phcoder@gmail.com>
1658
1659
	* grub-core/lib/crypto.c (grub_crypto_hash): Remove variable length
1660
	array.
1661
1662
2013-11-20  Vladimir Serbinenko  <phcoder@gmail.com>
1663
1664
	* util/grub-mkconfig.in: Say explicit "grub configuration" rather
1665
	than grub.cfg.
1666
1667
2013-11-20  Vladimir Serbinenko  <phcoder@gmail.com>
1668
1669
	* coreboot.cfg: Add missing file.
1670
1671
2013-11-19  Vladimir Serbinenko  <phcoder@gmail.com>
1672
1673
	* Makefile.am: Allow STRIP to be empty when creating windowszip.
1674
1675
2013-11-19  Axel Kellermann <axel.kellermann@gmx.de>
1676
1677
	* util/grub.d/30_os-prober.in: Add GRUB_OS_PROBER_SKIP_LIST to
1678
	selectively skipping systems.
1679
1680
2013-11-19  Colin Watson  <cjwatson@ubuntu.com>
1681
1682
	* Makefile.util.def (grub-mkimage): Add
1683
	grub-core/osdep/aros/config.c to extra_dist.
1684
	* conf/Makefile.extra-dist (EXTRA_DIST): Add docs/autoiso.cfg,
1685
	docs/osdetect.cfg, grub-core/gnulib-fix-null-deref.diff,
1686
	grub-core/gnulib-fix-width.diff, grub-core/gnulib-no-abort.diff, and
1687
	grub-core/gnulib-no-gets.diff.
1688
1689
2013-11-19  Vladimir Serbinenko  <phcoder@gmail.com>
1690
1691
	Add automated filesystem checking based on scripts I've used now for
1692
	quite some time locally. Most of the test require root so they are
1693
	skipped when run without necessarry privelegies.
1694
1695
2013-11-19  Colin Watson  <cjwatson@ubuntu.com>
1696
1697
	* util/grub-install.c (main): Adjust info messages to match
1698
	installed paths of grub-bios-setup and grub-sparc64-setup.
1699
1700
2013-11-19  Colin Watson  <cjwatson@ubuntu.com>
1701
1702
	* util/grub-install-common.c (copy_locales): Consistently use
1703
	grub_util_get_localedir () rather than LOCALEDIR.
1704
	(grub_install_copy_files): Likewise.
1705
1706
2013-11-19  Josh Triplett  <josh@joshtriplett.org>
1707
1708
	* grub-core/kern/x86_64/efi/startup.S (_start): Align the stack to a
1709
	16-byte boundary, as required by the x86-64 ABI, before calling
1710
	grub_main.  In some cases, GCC emits code that assumes this
1711
	alignment, which crashes if not aligned.  The EFI firmware is also
1712
	entitled to assume that stack alignment without checking.
1713
1714
2013-11-18  Josh Triplett  <josh@joshtriplett.org>
1715
1716
	* grub-core/mmap/efi/mmap.c (grub_mmap_register): Round up/down to
1717
	4k page boundaries as expected by firmware rather than 1k
1718
	boundaries.
1719
	(grub_mmap_malign_and_register): Likewise.
1720
1721
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1722
1723
	* tests/grub_func_test.in: Decrease RAM size to 512M. With less
1724
	fragmentation 512M is enough.
1725
1726
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1727
1728
	* grub-core/kern/mm.c (grub_real_malloc): Decrease cut-off of moving the
1729
	pointer to 32K. This is the size of cache element which is the most
1730
	common allocation >1K. This way the pointer is always around blocks
1731
	of 32K and so we keep performance while decreasing fragmentation.
1732
1733
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1734
1735
	* grub-core/kern/mm.c (grub_real_malloc): Don't update the pointer to
1736
	current memory when allocating large chunks. This significantly
1737
	decreases memory fragmentation.
1738
1739
2013-11-18  Colin Watson  <cjwatson@ubuntu.com>
1740
1741
	* tests/gzcompress_test.in: Skip if gzip is not installed (unlikely,
1742
	but for symmetry).
1743
	* tests/lzocompress_test.in: Skip if lzop is not installed.
1744
	* tests/xzcompress_test.in: Skip if xz is not installed.
1745
1746
2013-11-18  Colin Watson  <cjwatson@ubuntu.com>
1747
1748
	* util/grub-mkrescue.c (main): Fix typo.
1749
1750
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1751
1752
	* grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Update
1753
	clock frequency to 200 MHz,
1754
1755
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1756
1757
	* tests/util/grub-shell.in: Increase console size to 1024x1024.
1758
1759
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1760
1761
	* Makefile.am (default_payload.elf): Add pata to loaded modules.
1762
	Load config file from (cbfsdisk)/etc/grub.cfg.
1763
1764
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1765
1766
	* util/grub-install-common.c (grub_install_copy_files): Fix module
1767
	destination directory.
1768
1769
2013-11-18  Colin Watson  <cjwatson@ubuntu.com>
1770
1771
	* tests/util/grub-shell.in: Don't fail on emu platform if po/*.gmo
1772
	files have not been built.
1773
1774
2013-11-18  Colin Watson  <cjwatson@ubuntu.com>
1775
1776
	* grub-core/osdep/unix/hostdisk.c (grub_util_make_temporary_file):
1777
	Handle errors from mkstemp.
1778
	(grub_util_make_temporary_dir): Handle errors from mkdtemp.
1779
1780
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1781
1782
	* tests/util/grub-shell.in: Use -cdrom and don't force cdrom
1783
	on primary master on pseries.
1784
1785
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1786
1787
	* grub-core/tests/videotest_checksum.c: Don't reload unifont if it's
1788
	already loaded. This saves memory needed for tests,
1789
1790
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1791
1792
	* util/grub-mkrescue.c (main): Fix a typo to make yeeloong part
1793
	work again.
1794
1795
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1796
1797
	* grub-core/term/terminfo.c (grub_cmd_terminfo): Fix a typo to make -g
1798
	work again.
1799
1800
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1801
1802
	* tests/util/grub-shell.in: For powerpc tests put the CD-ROM as primary
1803
	master since with some combinations of qemu and firmware only primary
1804
	IDE channel is available.
1805
1806
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1807
1808
	* grub-core/tests/gfxterm_menu.c: Skip high-resolution tests on
1809
	low-memory platforms where we don't have enough memory for them.
1810
	* grub-core/tests/videotest_checksum.c: Likewise.
1811
1812
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1813
1814
	* grub-core/tests/cmdline_cat_test.c: Don't reload unifont if it's
1815
	already loaded. This saves memory needed for tests,
1816
1817
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1818
1819
	Fix handling of install lists.
1820
1821
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1822
1823
	* grub-core/lib/sparc64/setjmp.S: Force spilling of current window.
1824
1825
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1826
1827
	On i386-ieee1275 we run in paged mode. So we need to explicitly map
1828
	the devices before accessing them.
1829
1830
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1831
1832
	* grub-core/lib/relocator.c (grub_mm_check_real): Accept const char *
1833
	as file argument.
1834
1835
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1836
1837
	* grub-core/normal/cmdline.c (grub_cmdline_get): Plug memory leak.
1838
1839
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1840
1841
	* grub-core/kern/file.c (grub_file_open): Free file->name on failure.
1842
	(grub_file_close): Free file->name.
1843
1844
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1845
1846
	* grub-core/commands/verify.c (free_pk): Plug memory leak.
1847
	(grub_load_public_key): Likewise.
1848
	(grub_verify_signature_real): Likewise.
1849
	(grub_cmd_verify_signature): Likewise.
1850
1851
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1852
1853
	* grub-core/commands/legacycfg.c (grub_legacy_check_md5_password): Plug
1854
	memory leak.
1855
1856
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1857
1858
	* grub-core/lib/powerpc/setjmp.S (grub_setjmp): Save r31.
1859
	(grub_longjmp): Restore r31.
1860
	* include/grub/powerpc/setjmp.h (grub_jmp_buf): Reserve space for r31.
1861
1862
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1863
1864
	* util/grub-mkrescue.c (make_image_fwdisk_abs): Insert all partmap
1865
	modules to be in line with make_image_abs.
1866
1867
2013-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
1868
1869
	* include/grub/mips/setjmp.h (grub_jmp_buf): Fix buffer size.
1870
1871
	setjmp.S uses 12 entries but buffer is declared with only 11 entries.
1872
1873
2013-11-17  Ian Campbell  <ijc@hellion.org.uk>
1874
1875
        * grub-core/disk/uboot/ubootdisk.c: Include SCSI disks.
1876
1877
2013-11-17  Vladimir Serbinenko  <phcoder@gmail.com>
1878
1879
	* tests/grub_func_test.in: Increase memory reservation as on EFI we need
1880
	to leave some memory to firmware.
1881
1882
2013-11-17  Vladimir Serbinenko  <phcoder@gmail.com>
1883
1884
	* grub-core/tests/cmdline_cat_test.c (cmdline_cat_test): Ignore errors
1885
	of loading gfxterm as gfxterm is embed in kernel on some platforms.
1886
	* grub-core/tests/gfxterm_menu.c (gfxterm_menu): Likewise.
1887
	Load gfxmenu.
1888
1889
2013-11-17  Vladimir Serbinenko  <phcoder@gmail.com>
1890
1891
	* tests/core_compress_test.in: Use full arguments as grub-mkimage-extra
1892
	now needs full arguments.
1893
1894
2013-11-17  Vladimir Serbinenko  <phcoder@gmail.com>
1895
1896
	* util/grub-mkrescue.c (main): Add trailing \n in
1897
	.disk_label.contentDetails to be in line with previous shell script.
1898
1899
2013-11-17  Vladimir Serbinenko  <phcoder@gmail.com>
1900
1901
	* util/grub-mkrescue.c (main): Use right source file for bootinfo.txt.
1902
1903
2013-11-17  Vladimir Serbinenko  <phcoder@gmail.com>
1904
1905
	* util/grub-install-common.c (grub_install_parse): Recognize
1906
	--compress=none like shell script did.
1907
1908
2013-11-17  Vladimir Serbinenko  <phcoder@gmail.com>
1909
1910
	* include/grub/misc.h: Replace check for __sparc64__ with one for
1911
	__sparc__ as __sparc64__ isn't actually defined.
1912
1913
2013-11-17  Vladimir Serbinenko  <phcoder@gmail.com>
1914
1915
	* tests/util/grub-shell.in: Use escc-ch-b on powerpc. This is missing
1916
	counterpart of fixing the naming of escc ports.
1917
1918
2013-11-17  Vladimir Serbinenko  <phcoder@gmail.com>
1919
1920
	* util/grub-install-common.c (platforms): Fix the order of entries and
1921
	remove useless field val.
1922
1923
2013-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
1924
1925
	* util/grub-install.c: Add new option --no-bootsector to skip
1926
	installing of bootsector. Accept --grub-setup=/bin/true as
1927
	backwards-compatible synonym.
1928
1929
2013-11-16  Andrey Borzenkov <arvidjaar@gmail.com>
1930
1931
	* util/grub-install.c (device_map_check_duplicates): Fix incorrect
1932
	order of qsort arguments (number of elements vs. element size).
1933
1934
2013-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
1935
1936
	Rewrite grub-install, grub-mkrescue, grub-mkstandalone and grub-mknetdir
1937
	the function of these files exceeds what can be sanely handled in shell
1938
	in posix-comaptible way. Also writing it in C extends the functionality
1939
	to non-UNIX-like OS and minimal environments.
1940
1941
2013-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
1942
1943
	* grub-core/kern/arm/cache.S: Don't switch back to ARM mode when
1944
	compiling to thumb2.
1945
	* grub-core/kern/arm/cache_armv7.S: Likewise.
1946
	* grub-core/lib/arm/setjmp.S: Likewise.
1947
1948
2013-11-16  Leif Lindholm <leif.lindholm@linaro.org>
1949
1950
	* grub-core/kern/arm/uboot/startup.S: delete superflouous save of r8
1951
	in grub_uboot_syscall
1952
1953
2013-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
1954
1955
	Decrease stack usage in lexer.
1956
1957
	We have only 92K of stack and using over 4K per frame is wasteful
1958
1959
	* grub-core/script/yylex.l (yyalloc), (yyfree), (yyrealloc): Declare
1960
	as macros so that compiler would remove useless structure on stack.
1961
	Better solution would be to fix flex not to put this structure on
1962
	the stack but flex is external program.
1963
1964
2013-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
1965
1966
	Decrease stack usage in signature verification.
1967
1968
	We have only 92K of stack and using over 4K per frame is wasteful
1969
1970
	* grub-core/commands/verify.c (grub_load_public_key): Allocate on heap
1971
	rather than stack.
1972
	(grub_verify_signature_real): Likewise.
1973
1974
2013-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
1975
1976
	Decrease stack usage in mdraid 0.9x.
1977
1978
	We have only 92K of stack and using over 4K per frame is wasteful
1979
1980
	* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Allocate on heap
1981
	rather than stack.
1982
1983
2013-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
1984
1985
	Decrease stack usage in BtrFS.
1986
1987
	We have only 92K of stack and using over 4K per frame is wasteful
1988
1989
	* grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Allocate on heap
1990
	rather than stack.
1991
1992
2013-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
1993
1994
	Decrease stack usage in JFS.
1995
1996
	We have only 92K of stack and using over 4K per frame is wasteful
1997
1998
	* grub-core/fs/jfs.c (getblk): Allocate on heap rather than on
1999
	stack. Note: this function is recursive.
2000
	(grub_jfs_read_inode): Read only part we care about.
2001
2002
2013-11-16  Leif Lindholm <leif.lindholm@linaro.org>
2003
2004
	* grub-core/kern/arm/uboot/startup.S: fix grub_uboot_syscall va_arg
2005
	handling
2006
2007
2013-11-16  Andrey Borzenkov <arvidjaar@gmail.com>
2008
2009
	* configure.ac: Restore -nostdlib for libgcc symbols tests.
2010
2011
2013-11-16  Andrey Borzenkov <arvidjaar@gmail.com>
2012
2013
	* docs/grub.texi (Environment): Document cmdpath.
2014
2015
2013-11-16  Andrey Borzenkov <arvidjaar@gmail.com>
2016
2017
	* grub-core/kern/mips/arc/init.c (grub_machine_get_bootlocation):
2018
	Remove "unused" attribute from arguments, they are used.
2019
2020
2013-11-15  Colin Watson  <cjwatson@debian.org>
2021
2022
	* .gitignore: Only ignore grub-mk* at the top level.
2023
2024
2013-11-15  Colin Watson  <cjwatson@ubuntu.com>
2025
2026
	* util/grub-reboot.in (usage): Fix a typo.
2027
2028
2013-11-15  Vladimir Serbinenko  <phcoder@gmail.com>
2029
2030
	Replace libgcc version of ctz with our own.
2031
2032
	On upcoming arm64 port libgcc ctz* are not usable in standalone
2033
	environment. Since we need ctz* for this case and implementation is
2034
	in C we may as well use it on all concerned platforms.
2035
2036
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2037
2038
	* configure.ac: Probe for linking format rather than guessing it based
2039
	on target_os.
2040
2041
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2042
2043
	* grub-core/disk/xen/xendisk.c (grub_xendisk_fini): Set state to
2044
	"1" prior to handoff.
2045
2046
	Reported by: M A Young.
2047
2048
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2049
2050
	* grub-core/kern/xen/init.c (grub_xenstore_write_file): Don't add
2051
	\0 to all files.
2052
2053
	Reported by: M A Young.
2054
2055
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2056
2057
	* grub-core/osdep/bsd/hostdisk.c (grub_util_get_fd_size_os): Fix
2058
	compilation on NetBSD.
2059
2060
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2061
2062
	* acinclude.m4: Don't add -P on initial nm test.
2063
2064
	Note: even though this patch postdates Andrey's it bears 14 Nov as
2065
	date due to timezone difference.
2066
2067
2013-11-15  Andrey Borzenkov <arvidjaar@gmail.com>
2068
2069
	* grub-core/Makefile.core.def (signature_test): Add missing
2070
	tests/signatures.h.
2071
2072
2013-11-14  Colin Watson  <cjwatson@ubuntu.com>
2073
2074
	* util/grub-install_header: Set localedir here, since this file is
2075
	where it's used.
2076
	* util/grub-install.in: Remove setting of localedir.
2077
	* util/grub-mkrescue.in: Likewise.
2078
2079
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2080
2081
	* Makefile.am (default_payload.elf): Add uhci, ohci and usb_keyboard.
2082
2083
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2084
2085
	* configure.ac: Move nm checks to the end.
2086
	Call grub_PROG_NM_WORKS.
2087
	* acinclude.m4: New check grub_PROG_NM_WORKS.
2088
	Use $TARGET_CFLAGS -c when compiling test binary.
2089
2090
2013-11-14  Colin Watson  <cjwatson@ubuntu.com>
2091
2092
	* util/getroot.c (grub_util_biosdisk_get_grub_dev) [__GNU__]: Remove
2093
	unused variables.
2094
2095
2013-11-14  Matthew Garrett  <mjg@redhat.com>
2096
2097
	* grub-core/kern/main.c (grub_set_prefix_and_root): Set variable
2098
	cmdpath to firmware directory.
2099
2100
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2101
2102
	* grub-core/kern/efi/efi.c (grub_efi_get_filename): Reset the pointer
2103
	at the start of second iteration.
2104
2105
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2106
2107
	* grub-core/Makefile.am (efiemu64.o): Explicitly set link format.
2108
2109
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2110
2111
	* Makefile.am (default_payload.elf): New target for easier coreboot
2112
	build.
2113
2114
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2115
2116
	* grub-core/kern/arm/cache_armv6.S: Remove special handling for
2117
	clang (not necessarry with -no-integrated-as).
2118
	* include/grub/symbol.h [__arm__]: Likewise.
2119
2120
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2121
2122
	* configure.ac: Use -no-integrated-as on arm with clang.
2123
	* INSTALL: Mention ARM compilation with clang.
2124
2125
2013-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
2126
2127
	* conf/Makefile.common (CCASFLAGS_PLATFORM) [COND_arm]: Add
2128
	-mthumb-interwork.
2129
2130
2013-11-14  Colin Watson  <cjwatson@ubuntu.com>
2131
2132
	* grub-core/fs/ext2.c (grub_ext2_read_block): Factor out common
2133
	code for indirect block handling.
2134
2135
	Saves 185 bytes on compressed image.
2136
2137
2013-11-13  Paulo Flabiano Smorigo  <pfsmorigo@br.ibm.com>
2138
2139
	Fix make clean.
2140
2141
	* Makefile.am: Remove build-grub-* in make clean.
2142
2143
2013-11-13  Paulo Flabiano Smorigo  <pfsmorigo@br.ibm.com>
2144
2145
	New files to gitignore.
2146
2147
	* .gitignore: Add build-grub-gen-asciih, build-grub-gen-widthspec,
2148
	build-grub-mkfont, and grub-emu-lite. Remove .bzrignore.
2149
2150
2013-11-13  Leif Lindholm <leif.lindholm@linaro.org>
2151
2152
	* grub-core/kern/arm/misc.S: Make thumb2-compatible.
2153
2154
2013-11-13  Leif Lindholm <leif.lindholm@linaro.org>
2155
2156
	* .gitignore: fix rules for .dep* and add *.a post git migration
2157
2158
2013-11-13  Colin Watson  <cjwatson@ubuntu.com>
2159
2160
	* configure.ac (AM_INIT_AUTOMAKE): Require at least version 1.10.1,
2161
	to match INSTALL.
2162
2163
2013-11-13  Colin Watson  <cjwatson@ubuntu.com>
2164
2165
	* grub-core/kern/misc.c: Don't redirect divisions in the
2166
	GRUB_UTIL case.
2167
	* include/grub/misc.h: Likewise.
2168
2169
2013-11-13  Colin Watson  <cjwatson@ubuntu.com>
2170
2171
	* grub-core/osdep/unix/emuconsole.c (put): Pacify the compiler on
2172
	systems that require checking the return value of write.
2173
2174
2013-11-13  Colin Watson  <cjwatson@ubuntu.com>
2175
2176
	* util/grub-install.in (efi_quiet): Fix inverted logic: make
2177
	efibootmgr quiet when --debug is not used, rather than when it is.
2178
2179
2013-11-13  Colin Watson  <cjwatson@ubuntu.com>
2180
2181
	* gentpl.py (define_macro_for_platform_dependencies): Remove
2182
	first (and thus unused) of two definitions for this function.
2183
	(platform_dependencies): Likewise.
2184
2185
2013-11-13  Colin Watson  <cjwatson@ubuntu.com>
2186
2187
	* acinclude.m4 (grub_apple_cc): Remove; since the removal of nested
2188
	functions, we only need to check this for the target, not the host.
2189
	* configure.ac (grub_apple_cc): Likewise.
2190
2191
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2192
2193
	* grub-core/kern/arm/cache.c (probe_caches): Move asm part to ...
2194
	* grub-core/kern/arm/cache_armv6.S: ... here. This allows this
2195
	asm to stay in arm even if surrounding is thumb.
2196
2197
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2198
2199
	* grub-core/kern/arm/misc.S: Add __muldi3 and __aeabi_lmul. Those
2200
	helper functions are needed for thumb.
2201
2202
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2203
2204
	* grub-core/disk/diskfilter.c (grub_diskfilter_make_raid): Make
2205
	level / 3 division explicitly unsigned. Saves few bytes.
2206
2207
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2208
2209
	* grub-core/fs/zfs/zfs.c (ZAP_LEAF_NUMCHUNKS): Use unsigned arithmetics.
2210
2211
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2212
2213
	* grub-core/normal/datetime.c (grub_get_weekday): Use if rather than
2214
	division.
2215
2216
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2217
2218
	* grub-core/kern/uboot/init.c: Move grub_uboot_machine_type and
2219
	grub_uboot_boot_data to asm part.
2220
2221
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2222
2223
	* grub-core/kern/arm/uboot/startup.S: Remove = by replacing with
2224
	literal load.
2225
	(grub_uboot_syscall): Save/restore r9 and align stack.
2226
2227
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2228
2229
	* grub-core/kern/arm/cache.S: Replace = with explicit litteral load.
2230
2231
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2232
2233
	* include/grub/symbol.h (END) [__arm__]: New macros. Replace all .end
2234
	occurencies with END.
2235
2236
2013-11-13  Colin Watson  <cjwatson@ubuntu.com>
2237
2238
	* util/grub-editenv.c (help_filter, argp): Document how to delete
2239
	the whole environment block.
2240
	Reported by Dan Jacobson.  Fixes Debian bug #726265.
2241
2242
2013-11-13  Colin Watson  <cjwatson@ubuntu.com>
2243
2244
	* docs/grub.texi (Internationalisation, Supported kernels): Fix
2245
	sectioning.
2246
2247
2013-11-13  Josh Triplett <josh@joshtriplett.org>
2248
2249
	* grub-core/normal/term.c (grub_set_more): Use bool logic rather than
2250
	increment/decrement.
2251
2252
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2253
2254
	* grub-core/kern/arm/cache_armv6.S [__clang__]: Don't add .armv6 when
2255
	compiling with clang.
2256
2257
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2258
2259
	* grub-core/kern/arm/uboot/startup.S: Use .org rather than assigning
2260
	".".
2261
2262
2013-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
2263
2264
	Redirect all divisions to grub_divmod64.
2265
2266
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2267
2268
	* grub-core/term/tparm.c (tparam_internal): Use unsigned divisions.
2269
2270
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2271
2272
	Add missing includes of loader.h.
2273
2274
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2275
2276
	* configure.ac: Allow disabling themes.
2277
2278
2013-11-12  Lukas Schwaighofer <lukas@schwaighofer.name>
2279
2280
	* util/grub.d/20_linux_xen.in: Don't decompress initrd.
2281
2282
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2283
2284
	* grub-core/term/at_keyboard.c: Don't poll non-functional AT controller
2285
	until it becomes operational.
2286
2287
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2288
2289
	* grub-core/Makefile.core.def (legacy_password_test): Disable
2290
	on platforms where no legacycfg is compiled.
2291
	* grub-core/tests/lib/functional_test.c: Tolerate failure to
2292
	load legacy_password_test.
2293
2294
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2295
2296
	* grub-core/loader/i386/bsd.c: Remove variable length arrays.
2297
2298
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2299
2300
	* grub-core/efiemu/prepare.c: Remove variable length arrays.
2301
2302
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2303
2304
	* grub-core/osdep/windows/hostdisk.c (grub_util_fd_strerror): Silence
2305
	strict-aliasing warning.
2306
	(fsync): Silence cast warning.
2307
2308
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2309
2310
	* grub-core/commands/verify.c: Remove variable length arrays.
2311
	Load gcry_dsa/gcry_rsa automatically.
2312
2313
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2314
2315
	* grub-core/tests/signature_test.c: New test.
2316
2317
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2318
2319
	* grub-core/disk/cryptodisk.c (luks_script_get): Adapt to new procfs
2320
	API.
2321
2322
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2323
2324
	* grub-core/tests/legacy_password_test.c (vectors): Make static.
2325
	* grub-core/tests/pbkdf2_test.c (vectors): Likewise.
2326
2327
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2328
2329
	* grub-core/tests/setjmp_test.c: Reset counter to 0 before starting.
2330
2331
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2332
2333
	* grub-core/fs/proc.c: Allow \0 in proc files.
2334
2335
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2336
2337
	* grub-core/tests/xnu_uuid_test.c: Fix assert message.
2338
2339
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2340
2341
	* grub-core/tests/xnu_uuid_test.c: Fix copyright year.
2342
2343
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2344
2345
	* grub-core/fs/ext2.c: Remove variable length arrays.
2346
2347
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2348
2349
	* grub-core/lib/crypto.c (grub_crypto_cbc_decrypt): Remove variable
2350
	length arrays.
2351
2352
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2353
2354
	* grub-core/disk/AFSplitter.c: Remove variable length arrays.
2355
	* grub-core/disk/cryptodisk.c: Likewise.
2356
	* grub-core/disk/geli.c: Likewise.
2357
	* grub-core/disk/luks.c: Likewise.
2358
2359
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2360
2361
	* grub-core/tests/legacy_password_test.c: New test.
2362
	* grub-core/commands/legacycfg.c: Remove variable length arrays.
2363
2364
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2365
2366
	* grub-core/lib/pbkdf2.c: Remove variable length arrays.
2367
2368
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2369
2370
	* grub-core/tests/pbkdf2_test.c: New test.
2371
2372
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2373
2374
	* grub-core/lib/xzembed/xz_dec_stream.c: Remove variable length arrays.
2375
2376
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2377
2378
	* grub-core/io/lzopio.c: Remove variable length arrays.
2379
2380
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2381
2382
	* include/grub/crypto.h: Add maximums on hash size and cipher block
2383
	size.
2384
2385
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2386
2387
	* grub-core/commands/xnu_uuid.c: Remove variable length arrays.
2388
2389
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2390
2391
	* grub-core/tests/xnu_uuid_test.c: New test.
2392
2393
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2394
2395
	* grub-core/commands/hashsum.c: Remove unneeded memset (zalloc already
2396
	covers it).
2397
2398
2013-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
2399
2400
	* grub-core/commands/hashsum.c: Remove variable length arrays.
2401
2402
2013-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
2403
2404
	* grub-core/tests/gfxterm_menu.c (gfxterm_menu): Handle out-of-memory
2405
	condition.
2406
	* tests/grub_func_test.in: Increase memory allocation.
2407
2408
2013-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
2409
2410
	* grub-core/osdep/unix/getroot.c [HAVE_STRUCT_STATFS_F_FSTYPENAME
2411
	&& HAVE_STRUCT_STATFS_F_MNTFROMNAME]: Include sys/param.h and
2412
	sys/mount.h.
2413
2414
2013-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
2415
2416
	* grub-core/osdep/apple/hostdisk.c (grub_util_get_fd_size): Rename to ..
2417
	(grub_util_get_fd_size_os): ...this.
2418
	(grub_hostdisk_flush_initial_buffer): New empty function.
2419
2420
2013-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
2421
2422
	* grub-core/gensyminfo.sh.in: Handle the case of portable output
2423
	without --defined-only.
2424
2425
2013-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
2426
2427
	* grub-core/lib/i386/relocator_common.S [__APPLE__ && __x86_64__]: Use
2428
	rip-relative addressing in prologue.
2429
2430
2013-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
2431
2432
	* include/grub/misc.h [__APPLE__]: Do not add regparm(0) on x86_64.
2433
	* grub-core/kern/misc.c (__bzero) [__APPLE__]: New function.
2434
2435
2013-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
2436
2437
	* util/getroot.c (grub_util_biosdisk_get_grub_dev) [__APPLE__]:
2438
	Add missing semicolon.
2439
2440
2013-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
2441
2442
	* util/grub-macho2img.c: Use plain fopen rather than grub_util_fopen.
2443
2444
2013-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
2445
2446
	* configure.ac: Check for lzma.h for enabling liblzma and allow
2447
	manual disabling.
2448
2449
2013-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
2450
2451
	Add missing includes of loader.h.
2452
2453
2013-11-11  Fam Zheng <famcool@gmail.com>
2454
2455
	* util/grub.d/30_os-prober.in: Add minix entry.
2456
2457
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2458
2459
	* grub-core/loader/i386/coreboot/chainloader.c (load_segment): Use
2460
	right buffer for temporary load.
2461
2462
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2463
2464
	* grub-core/loader/i386/coreboot/chainloader.c: Support tianocore.
2465
2466
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2467
2468
	* grub-core/loader/i386/coreboot/chainloader.c: Support lzma-compressed
2469
	payload.
2470
2471
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2472
2473
	* include/grub/lib/LzmaDec.h: Fix to include LzmaTypes.h and
2474
	not Types.h.
2475
	* grub-core/lib/LzmaDec.c: Fix prologue to make it compileable in GRUB
2476
	environment.
2477
	(LzmaDec_InitDicAndState): Make static.
2478
2479
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2480
2481
	* util/grub-mkimagexx.c (generate_elf): Fix module address on coreboot.
2482
2483
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2484
2485
	* grub-core/term/ieee1275/escc.c (GRUB_MOD_INIT): Fix order of channels.
2486
2487
	Reported by: Aaro Koskinen <aaro.koskinen@iki.fi>
2488
2489
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2490
2491
	* docs/grub-dev.texi: Replace bzr references with git ones.
2492
2493
2013-11-10  Andrey Borzenkov <arvidjaar@gmail.com>
2494
2495
	* docs/grub.texi (Simple configuration): Remove reference to
2496
	grub-reboot from saved default entry description - grub-default
2497
	does not use it anymore.
2498
2499
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2500
2501
	* configure.ac: Make efiemu test cflags match the cflags efiemu is
2502
	compiled with.
2503
2504
2013-11-10  Andrey Borzenkov <arvidjaar@gmail.com>
2505
2506
	* docs/grub.texi (Simple configuration): Document GRUB_DISABLE_SUBMENU.
2507
2508
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2509
2510
	Fix grub_machine_fini bitrot.
2511
2512
	Reported by: Glenn Washburn.
2513
2514
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2515
2516
	* configure.ac: Remove leftover -fnested-funcions -Wl,-allow_execute.
2517
2518
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2519
2520
	* grub-core/Makefile.am (efiemu): Remove leftover -DAPPLE_CC and
2521
	-DELF.
2522
	* grub-core/efiemu/runtime/config.h: Use __i386__ and __x86_64__
2523
	instead of ELF*.
2524
2525
2013-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
2526
2527
	* configure.ac: Restore CFLAGS to TARGET_CFLAGS before external tests.
2528
	Add -march=core2 when testing compile of efiemu64.
2529
2530
	Thanks Andrey Borzenkov for spotting this.
2531
2532
2013-11-09  Vladimir Serbinenko  <phcoder@gmail.com>
2533
2534
	Add new ports: i386-xen and x86_64-xen. This allows running GRUB in
2535
	XEN PV environment and load kernels.
2536
2537
2013-11-09  Vladimir Serbinenko  <phcoder@gmail.com>
2538
2539
	* grub-core/loader/i386/multiboot_mbi.c: Handle space in command line.
2540
	* grub-core/loader/multiboot_mbi2.c: Likewise.
2541
2542
2013-11-09  Vladimir Serbinenko  <phcoder@gmail.com>
2543
2544
	* grub-core/lib/cmdline.c (grub_loader_cmdline_size): Fix empty cmdline
2545
	handling.
2546
2547
2013-11-09  Vladimir Serbinenko  <phcoder@gmail.com>
2548
2549
	* grub-core/commands/i386/cmostest.c: Add new command "cmosset".
2550
2551
	Tested by: Denis 'GNUtoo' Carikli.
2552
2553
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2554
2555
	* grub-core/normal/datetime.c (grub_get_weekday): Use unsigned types.
2556
2557
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2558
2559
	* grub-core/gfxmenu/gui_circular_progress.c (parse_angle):
2560
	Use to get rounded angle rather than truncated.
2561
2562
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2563
2564
	* grub-core/term/serial.c: Add option for enabling/disabling
2565
	RTS/CTS flow control.
2566
2567
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2568
2569
	* grub-core/lib/libgcrypt/cipher/idea.c (mul_inv): Remove signed
2570
	divisions.
2571
2572
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2573
2574
	* grub-core/lib/libgcrypt/mpi/mpih-div.c (_gcry_mpih_divrem):
2575
	Use grub_fatal rather than divide by zero.
2576
	* grub-core/lib/libgcrypt/mpi/mpi-pow.c (gcry_mpi_powm): Likewise.
2577
2578
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2579
2580
	* include/grub/gui.h (grub_fixed_sfs_divide): Round rather than
2581
	truncate.
2582
	(grub_fixed_fsf_divide): Likewise.
2583
2584
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2585
2586
	* grub-core/gfxmenu/gui_list.c (draw_scrollbar): Avoid
2587
	division by-zero and senseless negative divisions.
2588
2589
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2590
2591
	* grub-core/gfxmenu/gui_circular_progress.c (circprog_paint): Avoid
2592
	division by-zero and senseless negative divisions.
2593
	(circprog_set_property): Don't accept negative num_ticks.
2594
2595
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2596
2597
	* grub-core/gfxmenu/gui_progress_bar.c (draw_pixmap_bar): Avoid
2598
	division by-zero and senseless negative divisions.
2599
2600
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2601
2602
	* configure.ac: Use elf_*_fbsd on kfreebsd.
2603
2604
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2605
2606
	* grub-core/tests/div_test.c: New test.
2607
2608
2013-11-08  Vladimir Testov  <vladimir.testov@rosalab.ru>
2609
2610
	* grub-core/gfxmenu/gui_box.c: Updated to work with area status.
2611
	* grub-core/gfxmenu/gui_canvas.c: Likewise.
2612
	* grub-core/gfxmenu/view.c: Likewise.
2613
	* grub-core/video/fb/video_fb.c: Introduce new functions:
2614
	grub_video_set_area_status, grub_video_get_area_status,
2615
	grub_video_set_region, grub_video_get_region.
2616
	* grub-core/video/bochs.c: Likewise.
2617
	* grub-core/video/capture.c: Likewise.
2618
	* grub-core/video/video.c: Likewise.
2619
	* grub-core/video/cirrus.c: Likewise.
2620
	* grub-core/video/efi_gop.c: Likewise.
2621
	* grub-core/video/efi_uga.c: Likewise.
2622
	* grub-core/video/emu/sdl.c: Likewise.
2623
	* grub-core/video/radeon_fuloong2e.c: Likewise.
2624
	* grub-core/video/sis315pro.c: Likewise.
2625
	* grub-core/video/sm712.c: Likewise.
2626
	* grub-core/video/i386/pc/vbe.c: Likewise.
2627
	* grub-core/video/i386/pc/vga.c: Likewise.
2628
	* grub-core/video/ieee1275.c: Likewise.
2629
	* grub-core/video/i386/coreboot/cbfb.c: Likewise.
2630
	* include/grub/video.h: Likewise.
2631
	* include/grub/video_fb.h: Likewise.
2632
	* include/grub/fbfill.h: Updated render_target structure.
2633
	grub_video_rect_t viewport, region, area
2634
	int area_offset_x, area_offset_y, area_enabled
2635
	* include/grub/gui.h: New helper function
2636
	grub_video_bounds_inside_region.
2637
	* docs/grub-dev.texi: Added information about new functions.
2638
2639
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2640
2641
	* grub-core/kern/mm.c (grub_real_malloc): Use AND rather than MOD
2642
	for alignment.
2643
2644
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2645
2646
	* grub-core/lib/reed_solomon.c (grub_reed_solomon_recover): Add
2647
	missing attribute.
2648
	* grub-core/gdb/cstub.c (grub_gdb_trap): Likewise.
2649
2650
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2651
2652
	* grub-core/kern/misc.c (grub_divmod64): Don't fallback to
2653
	simple division on arm and ia64.
2654
2655
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2656
2657
	* grub-core/kern/arm/misc.S (__aeabi_unwind_cpp_pr0): Add dummy to
2658
	link with libgcc.
2659
2660
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2661
2662
	* include/grub/symbol.h (FUNCTION), (VARIABLE): Fix precedence logic.
2663
2664
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2665
2666
	* include/grub/symbol.h (FUNCTION), (VARIABLE) [__arm__]: Use % as
2667
	prefix symbol, not @.
2668
2669
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2670
2671
	* INSTALL: Add note about older gcc and clang.
2672
2673
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2674
2675
	* tests/util/grub-shell.in: Boot as hdd on ppc by default.
2676
2677
2013-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
2678
2679
	* grub-core/loader/multiboot_mbi2.c (grub_multiboot_add_module): Fix
2680
	NULL pointer dereference.
2681
2682
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2683
2684
	* grub-core/Makefile.am: Do not include libgcc.h when compiling with
2685
	clang.
2686
2687
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2688
2689
	* grub-core/kern/powerpc/dl.c: Add missing pragma to silence cast-align
2690
	warnings.
2691
2692
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2693
2694
	* grub-core/net/net.c (grub_net_route_unregister): Remove unused
2695
	function.
2696
	* grub-core/loader/i386/xnu.c (hextoval): Likewise.
2697
	* grub-core/disk/geli.c (ascii2hex): Likewise.
2698
2699
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2700
2701
	* configure.ac: Run linker tests without -Werror.
2702
	Define TARGET_LDFLAGS_STATIC_LIBGCC and TARGET_LIBGCC.
2703
	Change all occurences of -static-libgcc resp -lgcc to
2704
	TARGET_LDFLAGS_STATIC_LIBGCC resp TARGET_LIBGCC.
2705
2706
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2707
2708
	* configure.ac: Don't add -no-itegrated-as on clang on non-x86.
2709
2710
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2711
2712
	Allow compiling with clang (not really supported though).
2713
2714
	* conf/Makefile.common (CFLAGS_PLATFORM): Don't add -mrtd -mregparm=3
2715
	unconditionally.
2716
	* configure.ac: Add -no-integrated-as when using clangfor asm files.
2717
	Add -mrtd -mregparm=3 on i386 when not using clang.
2718
	* grub-core/kern/misc.c (grub_memset): Add volatile when on clang.
2719
2720
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2721
2722
	* grub-core/kern/ieee1275/cmain.c: Add explicit attribute on asm
2723
	bindings.
2724
	* grub-core/lib/reed_solomon.c: Likewise.
2725
	* include/grub/i386/gdb.h: Likewise.
2726
	* include/grub/i386/pc/int.h: Likewise.
2727
	* include/grub/i386/pc/pxe.h: Likewise.
2728
	* include/grub/ieee1275/ieee1275.h: Likewise.
2729
2730
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2731
2732
	Import libgcrypt 1.5.3.
2733
2734
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2735
2736
	* configure.ac: Don't add -Wcast-align on x86.
2737
2738
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2739
2740
	* configure.ac: Add -freg-struct-return on all platforms that
2741
	support it.
2742
2743
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2744
2745
	* acinclude.m4: Use -Werror on parameter tests.
2746
	* configure.ac: Likewise.
2747
2748
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2749
2750
	* acinclude.m4: Add missing TARGET_CCASFLAGS on asm tests.
2751
2752
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2753
2754
	* configure.ac: Check that -malign-loops works rather than assuming that
2755
	either -falign-loops or -malign-loops work.
2756
2757
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2758
2759
	* configure.ac: Remove -fnested-functions. We don't need it anymore.
2760
2761
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2762
2763
	* configure.ac: Prevent cflags leaking to subsequent tests by always
2764
	resetting cflags to target_cflags in target tests.
2765
2766
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2767
2768
	* grub-core/kern/parser.c (grub_parser_split_cmdline): Remove nested
2769
	function.
2770
2771
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2772
2773
	* grub-core/kern/misc.c (grub_vsnprintf_real): Remove nested functions.
2774
2775
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2776
2777
	* grub-core/lib/arg.c (grub_arg_parse): Remove nested function.
2778
2779
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2780
2781
	* grub-core/normal/cmdline.c (grub_cmdline_get):
2782
	Remove nested functions.
2783
2784
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2785
2786
	* tests/test_sha512sum.in: Make it work on emu.
2787
2788
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2789
2790
	* grub-core/normal/charset.c (bidi_line_wrap): Eliminate nested
2791
	functions.
2792
	(grub_bidi_line_logical_to_visual): Likewise.
2793
2794
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2795
2796
	Remove vestiges of -Wunsafe-loop-optimisations.
2797
2798
	* conf/Makefile.common (CFLAGS_GNULIB): Remove
2799
	-Wno-unsafe-loop-optimisations.
2800
	* grub-core/commands/legacycfg.c: Remove -Wunsafe-loop-optimisations
2801
	pragma.
2802
	* grub-core/io/gzio.c: Likewise.
2803
	* grub-core/script/parser.y: Likewise.
2804
	* grub-core/script/yylex.l: Likewise.
2805
	* util/grub-mkfont.c: Likewise.
2806
2807
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2808
2809
	* util/grub-mkfont.c (process_cursive): Remove nested function.
2810
2811
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2812
2813
	* include/grub/misc.h (grub_dprintf): Use unnamed vararg.
2814
	(grub_boot_time): Likewise.
2815
2816
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2817
2818
	* include/grub/symbol.h (FUNCTION): Use @function rather than
2819
	"function".
2820
	(VARIABLE): Likewise.
2821
2822
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2823
2824
	* grub-core/net/bootp.c (OFFSET_OF): Explicitly cast to grub_size_t.
2825
2826
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2827
2828
	* grub-core/net/bootp.c (set_env_limn_ro): Make pointer const.
2829
	(parse_dhcp_vendor): Likewise.
2830
2831
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2832
2833
	* util/grub-mkimagexx.c (relocate_symbols): Remove unneeded brackets.
2834
2835
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2836
2837
	* grub-core/gettext/gettext.c (main_context), (secondary_context):
2838
	Define after defining type and not before.
2839
2840
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2841
2842
	* grub-core/fs/zfs/zfscrypt.c (grub_ccm_decrypt): Return right error
2843
	type.
2844
	(grub_gcm_decrypt): Likewise.
2845
	(algo_decrypt): Likewise.
2846
	(grub_zfs_decrypt_real): Transform error type.
2847
2848
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2849
2850
	* grub-core/disk/geli.c (geli_rekey): Fix error return type.
2851
2852
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2853
2854
	* grub-core/disk/usbms.c (grub_usbms_cbi_cmd): Fix error type.
2855
	(grub_usbms_cbi_reset): Likewise.
2856
	(grub_usbms_bo_reset): Likewise.
2857
	(grub_usbms_reset): Likewise.
2858
	(grub_usbms_attach): Likewise.
2859
	(grub_usbms_transfer_cbi): Likewise.
2860
2861
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2862
2863
	* grub-core/io/lzopio.c (test_header): Simplify code and remove useless
2864
	"checksum = checksum;".
2865
2866
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2867
2868
	* grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Fix type of
2869
	entry_type.
2870
2871
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2872
2873
	* grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel): Fix
2874
	BIOS disk check.
2875
2876
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2877
2878
	* grub-core/bus/usb/ehci.c (grub_ehci_restore_hw): Return right enum
2879
	type.
2880
	(grub_ehci_fini_hw): Likewise.
2881
	* grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Likewise.
2882
2883
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2884
2885
	* include/grub/usb.h (grub_usb_controller_dev): Make portstatus
2886
	return grub_usb_err_t for cosistency. All users updated.
2887
2888
2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
2889
2890
	* util/mkimage.c (SzAlloc): Use attribute unused rather than dubious
2891
	assigning to itself.
2892
2893
2013-11-05  Gustavo Luiz Duarte  <gustavold@linux.vnet.ibm.com>
2894
2013-11-05  Paulo Flabiano Smorigo  <pfsmorigo@br.ibm.com>
2895
2896
	Issue separate DNS queries for ipv4 and ipv6
2897
2898
	Adding multiple questions on a single DNS query is not supportted by
2899
	most DNS servers. This patch issues two separate DNS queries
2900
	sequentially for ipv4 and then for ipv6.
2901
2902
	Fixes: https://savannah.gnu.org/bugs/?39710
2903
2904
	* grub-core/net/bootp.c (parse_dhcp_vendor): Add DNS option.
2905
	* grub-core/net/dns.c (grub_dns_qtype_id): New enum.
2906
	* (grub_net_dns_lookup): Now using separated dns packages.
2907
	* (grub_cmd_nslookup): Add error condition.
2908
	* (grub_cmd_list_dns): Print DNS option.
2909
	* (grub_cmd_add_dns): Add four parameters: --only-ipv4, --only-ipv6,
2910
	--prefer-ipv4, and --prefer-ipv6.
2911
	* include/grub/net.h (grub_dns_option_t): New enum.
2912
	* (grub_net_network_level_address): option added.
2913
2914
2013-11-05  Vladimir Testov  <vladimir.testov@rosalab.ru>
2915
2916
	* grub-core/video/fb/video_fb.c: Merge two blit functions
2917
	into one.
2918
2919
2013-11-05  Vladimir Serbinenko  <phcoder@gmail.com>
2920
2921
	* grub-core/term/terminfo.c: Add sequences for home and end.
2922
2923
2013-11-05  Vladimir Serbinenko  <phcoder@gmail.com>
2924
2925
	* grub-core/lib/legacy_parse.c: Fix handling of hercules and add
2926
	graphics console.
2927
2928
2013-11-05  Vladimir Serbinenko  <phcoder@gmail.com>
2929
2930
	* grub-core/video/i386/pc/vga.c: Fix double bufferring and
2931
	add mode 0x12.
2932
2933
2013-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
2934
2935
	* docs/grub.texi (Vendor power-on keys): Add XPS M1330M based on old
2936
	e-mail by Per Öberg.
2937
2938
2013-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
2939
2940
	* grub-core/commands/i386/nthibr.c (GRUB_MOD_INIT): Fix typo in command
2941
	name.
2942
2943
2013-11-04  Andrey Borzenkov <arvidjaar@gmail.com>
2944
2945
	*  configure.ac: Explicitly disable emusdl, emuusb and emupci on non-
2946
	emu platforms.
2947
	* grub-core/Makefile.core.def: Enable emupci and emuucb only for emu.
2948
2949
2013-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
2950
2951
	* docs/grub.texi: Document usage of menuentry id.
2952
2953
2013-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
2954
2955
	* docs/grub.texi: Add few mentions about EFI, debug and videoinfo.
2956
2957
2013-11-04  Peter Lustig <peter.lustig.7db@gmail.com>
2958
2959
	* grub-core/commands/i386/nthibr.c: New command.
2960
2961
2013-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
2962
2963
	* grub-core/tests/video_checksum.c: Add 2560x1440 mode to testing.
2964
2965
2013-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
2966
2967
	* include/grub/term.h (grub_term_coordinate): Extend to 16-bit per
2968
	coordinate.
2969
2970
2013-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
2971
2972
	Support GRUB_DISABLE_SUBMENU config.
2973
2974
	Inspired by patch from Prarit Bhargava.
2975
2976
2013-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
2977
2978
	* docs/grub.texi: Mention RSA support.
2979
2980
2013-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
2981
2982
	* grub-core/commands/verify.c: Add RSA support.
2983
2984
2013-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
2985
2986
	* grub-core/disk/ahci.c (grub_ahci_pciinit): Detect ATAPI devices.
2987
	* grub-core/disk/ata.c (grub_ata_identify): Use atapi_identify if
2988
	device is known to be ATAPI.
2989
2990
2013-11-03  Mike Frysinger <vapier>
2991
2992
	* configure.ac: Don't add target-prefix.
2993
2994
2013-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
2995
2996
	* grub-core/commands/loadenv.c (grub_cmd_save_env): Remove unset
2997
	variables.
2998
2999
2013-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
3000
3001
	* grub-core/gettext/gettext.c (grub_gettext_init_ext): Ignore errors
3002
	if language is English.
3003
3004
2013-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
3005
3006
	* grub-core/osdep/linux/getroot.c: Fix cast-align problems.
3007
3008
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3009
3010
	* configure.ac: Don't add -m32/-m64 on emu.
3011
3012
2013-11-02  neil
3013
3014
	* grub-core/osdep/linux/blocklist.c: Include linux/types.h for some
3015
	broken linux headers.
3016
3017
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3018
3019
	* util/grub.d/30_os-prober.in: Add unhiding of partition if on msdos.
3020
3021
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3022
3023
	* grub-core/lib/reed_solomon.c (grub_reed_solomon_recover): Don't do
3024
	Reed-Solomon recovery if more than half of redundancy info is 0.
3025
3026
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3027
3028
	* util/grub-mount.c: Handle symlinks to directories.
3029
3030
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3031
3032
	* grub-core/fs/fshelp.c (find_file): Save ctx->next when calling
3033
	find_file recursively for symlink.
3034
3035
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3036
3037
	* tests/util/grub-shell.in: Copy themes.
3038
3039
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3040
3041
	* util/grub-mkimagexx.c (locate_sections): Reject mislinked images.
3042
3043
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3044
3045
	* configure.ac: Use 0x8000 for address instead of 8000.
3046
3047
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3048
3049
	* grub-core/loader/sparc64/ieee1275/linux.c (get_physbase): Fix
3050
	signature.
3051
3052
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3053
3054
	* grub-core/disk/efi/efidisk.c (grub_efidisk_readwrite): Remove unused
3055
	variable.
3056
3057
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3058
3059
	* configure.ac (TARGET_CFLAGS): Add -march=i386 on i386.
3060
3061
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3062
3063
	* grub-core/fs/hfspluscomp.c (hfsplus_read_compressed_real): Call
3064
	file_progress_read_hook.
3065
	* grub-core/fs/ntfscomp.c (hfsplus_read_compressed_real): Likewise.
3066
3067
2013-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
3068
3069
	* conf/Makefile.common (CFLAGS_PLATFORM): Remove poisoning of float
3070
	and double.
3071
3072
2013-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
3073
3074
	* grub-core/fs/tar.c (grub_cpio_read): Add read_hook.
3075
3076
2013-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
3077
3078
	Rewrite blocklist functions in order to get progress when
3079
	reading large extents and decrease amount of blocklist hook calls.
3080
3081
2013-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
3082
3083
	* grub-core/term/serial.c (options), (grub_cmd_serial): Fix handling
3084
	of SI suffixes.
3085
3086
2013-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
3087
3088
	Support --base-clock for serial command to handle weird cards with
3089
	non-standard base clock.
3090
3091
2013-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
3092
3093
	* grub-core/fs/ext2.c (grub_ext2_read_symlink): Use memcpy rather
3094
	strncpy.
3095
	* grub-core/fs/jfs.c (grub_jfs_lookup_symlink): Likewise.
3096
	* grub-core/kern/misc.c (grub_strncpy): Move from here ...
3097
	* include/grub/misc.h (grub_strncpy): ... to here. Make inline.
3098
	* grub-core/net/net.c (grub_net_addr_to_str): Use COMPILE_TIME_ASSERT
3099
	+ strcpy rather than strncpy.
3100
3101
2013-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
3102
3103
	* grub-core/fs/zfs/zfs.c (nvpair_name): Use correct type for size.
3104
	(check_pool_label): Likewise. Fixes overflow.
3105
	(nvlist_find_value): Fix comparison.
3106
3107
2013-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
3108
3109
	* include/grub/misc.h (grub_strcat): Removed. All users changed to
3110
	more appropriate functions.
3111
3112
2013-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
3113
3114
	* grub-core/kern/efi/efi.c (grub_efi_get_filename): Avoid inefficient
3115
	realloc.
3116
3117
2013-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
3118
3119
	* util/grub-mkrescue.in: Do not use UUID search on EFI.
3120
3121
2013-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
3122
3123
	* grub-core/kern/dl.c: Unify section-finding algorithm. Saves 30 bytes
3124
	on core size.
3125
3126
2013-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
3127
3128
	* grub-core/kern/mm.c (grub_realloc): Don't copy more data than we have.
3129
3130
2013-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
3131
3132
	* grub-core/io/gzio.c (huft_build): Use zalloc for safety.
3133
	(initialize_tables): reset tl and td to NULL after freeing.
3134
3135
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3136
3137
	* grub-core/loader/multiboot_mbi2.c: Implement network tag.
3138
3139
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3140
3141
	* grub-core/loader/multiboot_mbi2.c: Add EFI memory map to the list
3142
	of supported tags.
3143
3144
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3145
3146
	* grub-core/loader/multiboot_mbi2.c: Implement EFI memory map.
3147
3148
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3149
3150
	* grub-core/loader/multiboot.c: Add support for multiboot kernels
3151
	quirks.
3152
3153
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3154
3155
	* grub-core/loader/i386/linux.c (allocate_pages): Allocate at least
3156
	a page in protected space.
3157
3158
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3159
3160
	* grub-core/loader/multiboot.c (grub_cmd_module): Don't attempt to
3161
	allocate space for zero-sized modules.
3162
3163
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3164
3165
	* grub-core/loader/xnu_resume.c (grub_xnu_resume): Reject empty images.
3166
3167
2013-10-28  Francesco Lavra  <francescolavra.fl@gmail.com>
3168
3169
	* grub-core/lib/fdt.c: Fix miscellaneous bugs.
3170
3171
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3172
3173
	* grub-core/lib/progress.c (grub_file_progress_hook_real): Add missing
3174
	safeguards. Fixes a crash with i386/pc/console.c.
3175
3176
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3177
3178
	* include/grub/emu/hostdisk.h: Add proper declaration for grub_host_init
3179
	and grub_hostfs_init.
3180
3181
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3182
3183
	* grub-core/kern/emu/hostdisk.c (grub_util_check_file_presence): Use
3184
	windows method on other platforms without good stat as well.
3185
3186
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3187
3188
	* grub-core/osdep/linux/getroot.c: Add new btrfs defines.
3189
3190
2013-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
3191
3192
	Make / in btrfs refer to real root, not the default volume.
3193
	Modify mkrelpath to work even if device is mounted with subvolid option.
3194
3195
2013-10-28  Andrey Borzenkov <arvidjaar@gmail.com>
3196
3197
	* Makefile.util.def: Add grub-core/kern/disk_common.c to library
3198
	extra_dist.
3199
	* grub-core/Makefile.core.def: Add kern/disk_common.c to disk module
3200
	extra_dist.
3201
3202
2013-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
3203
3204
	* util/grub-mkfont.c (main): Show error message when FT_Set_Pixel_Sizes
3205
	fails.
3206
3207
2013-10-27  BVK Chaitanya  <bvk.groups@gmail.com>
3208
3209
	* docs/autoiso.cfg: New file.
3210
3211
2013-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
3212
3213
	* configure.ac: Remove leftover COND_BUILD_GRUB_MKFONT and
3214
	COND_GRUB_PE2ELF conditions.
3215
3216
2013-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
3217
3218
	* grub-core/loader/i386/bsd.c (grub_cmd_openbsd): Accept "sd", "cd",
3219
	"vnd", "rd" and "fd" disks.
3220
3221
2013-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
3222
3223
	Move grub_disk_write out of kernel into disk.mod.
3224
3225
2013-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
3226
3227
	* grub-core/kern/misc.c (grub_vsnprintf_real): Unify int and wchar
3228
	handling.
3229
3230
2013-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
3231
3232
	* grub-core/kern/misc.c (grub_abort): Make static
3233
3234
2013-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
3235
3236
	* grub-core/kern/misc.c (grub_vsnprintf_real): Don't attempt to
3237
	transform invalid unicode codepoints.
3238
3239
2013-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
3240
3241
	* grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
3242
	\0 checking.
3243
3244
2013-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
3245
3246
	* grub-core/lib/legacy_parse.c: Add support for "nd" disk.
3247
3248
2013-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
3249
3250
	Consolidate cpuid code.
3251
3252
2013-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
3253
3254
	Move cpuid code to cpuid.h and TSC code to tsc.c.
3255
3256
2013-10-26  Grégoire Sutre  <gregoire.sutre@gmail.com>
3257
3258
	* util/grub.d/00_header.in: Don't use LANG if it's not set.
3259
3260
2013-10-26  Grégoire Sutre  <gregoire.sutre@gmail.com>
3261
3262
	* util/grub-mkconfig.in: Replace $0 with $self.
3263
	* util/grub-reboot.in: Likewise.
3264
	* util/grub-set-default.in: Likewise.
3265
3266
2013-10-26  BVK Chaitanya  <bvk.groups@gmail.com>
3267
3268
	* docs/osdetect.cfg: New file.
3269
3270
2013-10-26  BVK Chaitanya  <bvk.groups@gmail.com>
3271
3272
	* tests/util/grub-shell.in: Add new --debug option.
3273
3274
2013-10-26  BVK Chaitanya  <bvk.groups@gmail.com>
3275
3276
	* tests/test_unset.in: New test.
3277
3278
2013-10-26  BVK Chaitanya  <bvk.groups@gmail.com>
3279
3280
	* tests/test_sha512sum.in: New test.
3281
3282
2013-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
3283
3284
	* grub-core/fs/iso9660.c: Replace strncat with memcpy.
3285
	* include/grub/misc.h: Remove strncat.
3286
	* grub-core/lib/posix_wrap/string.h: Likewise.
3287
3288
2013-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
3289
3290
	* grub-core/net/tftp.c: Retransmit ack when rereceiving old packet.
3291
	Try to handle more than 0xFFFF packets.
3292
	Reported by: Bernhard Übelacker <bernhardu>.
3293
	He also spotted few overflows in first version of this patch.
3294
3295
2013-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
3296
3297
	* tests/date_unit_test.c: New test.
3298
3299
2013-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
3300
3301
	* grub-core/normal/datetime.c (grub_unixtime2datetime): Fix mishandling
3302
	of first three years after start of validity of unixtime.
3303
3304
2013-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
3305
3306
	* grub-core/normal/menu_entry.c (get_logical_num_lines): Use unsigned
3307
	division as the one making more sense.
3308
	(update_screen): Likewise.
3309
	(complete): Likewise.
3310
3311
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3312
3313
	* grub-core/normal/menu_entry.c (complete): Make sure that width is >0.
3314
3315
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3316
3317
	Make char and string width grub_size_t rather than grub_ssize_t.
3318
3319
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3320
3321
	* grub-core/normal/cmdline.c (grub_history_get): Make argument into
3322
	unsigned.
3323
	(grub_history_replace): Likewise.
3324
3325
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3326
3327
	* grub-core/disk/raid6_recover.c: Use unsigned arithmetics when
3328
	appropriate.
3329
3330
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3331
3332
	* grub-core/video/bitmap_scale.c: Use unsigned arithmetics when
3333
	appropriate.
3334
3335
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3336
3337
	* grub-core/video/fb/fbblit.c: Use (255 ^ x) rather than (255 - x).
3338
	Use unsigned divisions rather than signed variants.
3339
3340
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3341
3342
	* grub-core/video/readers/png.c (grub_png_convert_image): Use
3343
	unsigned arithmetics.
3344
	Add missing break.
3345
3346
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3347
3348
	* grub-core/video/readers/jpeg.c: Use unsigned where appropriate.
3349
3350
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3351
3352
	* grub-core/fs/zfs/zfs.c (xor_out): Use unsigned modular arithmetics
3353
	rather than signed one.
3354
	(recovery): Likewise.
3355
3356
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3357
3358
	* grub-core/net/dns.c (hash): Use unsigned arithmetic.
3359
3360
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3361
3362
	* grub-core/io/gzio.c (test_zlib_header): Use undigned modulo rather
3363
	than signed.
3364
3365
2013-10-25  Jon McCune <jonmccune@google.com>
3366
3367
	* docs/grub.texi: Cleanup security documentation around signatures.
3368
3369
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3370
3371
	* grub-core/fs/ext2.c (EXT2_BLOCK_SIZE): Make unsigned.
3372
3373
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3374
3375
	* grub-core/commands/gptsync.c (lba_to_chs): Use proper types rather
3376
	than int.
3377
3378
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3379
3380
	* conf/Makefile.common (CPPFLAGS_KERNEL): Add -DGRUB_KERNEL=1.
3381
	* include/grub/dl.h (GRUB_MOD_INIT), (GRUB_MOD_FINI): Define
3382
	functions when compiling for kernel.
3383
3384
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3385
3386
	* grub-core/lib/progress.c (grub_file_progress_hook_real): Cast to
3387
	unsigned long long when using %llu.
3388
3389
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3390
3391
	* grub-core/lib/progress.c (grub_file_progress_hook_real): Refresh
3392
	terminal after updating progress.
3393
3394
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3395
3396
	* grub-core/boot/i386/pc/startup_raw.S (grub_gate_a20): Remove
3397
	argument. We don't disable Gate A20 in this code.
3398
3399
2013-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
3400
3401
	* grub-core/boot/i386/qemu/boot.S: Ensure that A20 is enabled.
3402
	Conceptually based on change in branch "vbe-on-coreboot".
3403
3404
2013-10-24  Robert Millan  <rmh@gnu.org>
3405
3406
	* grub-core/video/i386/pc/vbe.c (grub_video_vbe_setup): Replace
3407
	numeric constants with their symbolic equivalent.
3408
	Taken from branch "vbe-on-coreboot".
3409
3410
2013-10-22  Vladimir Serbinenko  <phcoder@gmail.com>
3411
3412
	* docs/grub.texi: Fix ordering and use pxref rather than xref.
3413
3414
2013-10-22  Vladimir Serbinenko  <phcoder@gmail.com>
3415
3416
	* grub-core/lib/progress.c (grub_file_progress_hook_real): Use
3417
	divmod64 for offset division.
3418
3419
2013-10-22  Paulo Flabiano Smorigo  <pfsmorigo@br.ibm.com>
3420
3421
	Rename .bzrignore to .gitignore. Add "*.o" rule.
3422
3423
	* .bzrignore: Renamed to...
3424
	* .gitignore: ...this.
3425
3426
2013-10-22  Paulo Flabiano Smorigo  <pfsmorigo@br.ibm.com>
3427
3428
	Add new progress module that displays the load progress of files.
3429
3430
	* grub-core/lib/progress.c: New file.
3431
	* grub-core/Makefile.core.def (progress): New module.
3432
	* grub-core/kern/file.c (grub_file_open): File name added.
3433
	* (grub_file_read): Progress hook added.
3434
	* grub-core/fs/cbfs.c (grub_cbfs_read): Likewise.
3435
	* grub-core/fs/cpio_common.c (grub_cpio_read): Likewise.
3436
	* grub-core/net/net.c (grub_net_fs_read_real): Likewise.
3437
	* include/grub/file.h (struct grub_file): Add progress module members.
3438
	* include/grub/term.h (struct grub_term_output): Likewise.
3439
	* grub-core/osdep/unix/emuconsole.c (grub_console_term_output):
3440
	Terminal velocity added.
3441
	* grub-core/osdep/windows/emuconsole.c (grub_console_term_output): Likewise.
3442
	* grub-core/term/arc/console.c (grub_console_term_output): Likewise.
3443
	* grub-core/term/efi/console.c (grub_console_term_output): Likewise.
3444
	* grub-core/term/gfxterm.c (grub_video_term): Likewise.
3445
	* grub-core/term/i386/coreboot/cbmemc.c (grub_cbmemc_term_output): Likewise.
3446
	* grub-core/term/i386/pc/console.c (grub_console_term_output): Likewise.
3447
	* grub-core/term/i386/pc/vga_text.c (grub_vga_text_term): Likewise.
3448
	* grub-core/term/ieee1275/console.c (grub_console_term_output): Likewise.
3449
	* grub-core/term/morse.c (grub_audio_term_output): Likewise.
3450
	* grub-core/term/serial.c (grub_serial_term_output): Likewise.
3451
	* grub-core/term/spkmodem.c (grub_spkmodem_term_output): Likewise.
3452
	* grub-core/term/uboot/console.c (uboot_console_term_output): Likewise.
3453
3454
2013-10-22  Vladimir Serbinenko  <phcoder@gmail.com>
3455
3456
	Verify signatures of signatures unless --skip-sig is specified.
3457
3458
2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
3459
3460
	* grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
3461
	\0 checking.
3462
3463
	Saves 70 bytes on compressed image.
3464
3465
2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
3466
3467
	* grub-core/kern/misc.c (grub_strtoull): Remove needless *ptr != 0
3468
	check.
3469
3470
	Saves 10 bytes on compressed image.
3471
3472
2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
3473
3474
	* grub-core/kern/misc.c (grub_isprint): Move to ...
3475
	* include/grub/misc.h (grub_isprint): ... here. Make inline.
3476
3477
	Saves 20 bytes on compressed image due to remving exporting.
3478
3479
2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
3480
3481
	* grub-core/fs/ntfs.c (grub_ntfs_mount): Remove redundant check.
3482
3483
	Saves 5 bytes on compressed image.
3484
3485
2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
3486
3487
	* grub-core/fs/ntfs.c: Move common UTF-16 handling to a separate
3488
	function get_utf8.
3489
3490
	Saves 379 bytes on compressed image.
3491
3492
2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
3493
3494
	* grub-core/fs/ntfs.c: Handle 48-bit MFT no.
3495
3496
2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
3497
3498
	* grub-core/fs/ntfs.c (read_run_data): Rewrite using bitfields.
3499
3500
	Saves 40 bytes on compressed image.
3501
3502
2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
3503
3504
	* grub-core/fs/ntfs.c (grub_ntfs_iterate_dir): Use grub_uint8_t for
3505
	mask rather than 64-bit type.
3506
3507
	Saves 20 bytes on compressed image.
3508
3509
2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
3510
3511
	* grub-core/fs/ntfs.c (read_data): Move code for compressed data to ...
3512
	* grub-core/fs/ntfscomp.c (ntfscomp): ... here.
3513
3514
	Saves 273 bytes on compressed image.
3515
3516
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3517
3518
	* grub-core/kern/disk.c (grub_disk_write): Use malloc/free instead of
3519
	variable length arrays.
3520
3521
	Saves 50 bytes on compressed image.
3522
3523
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3524
3525
	* grub-core/loader/i386/bsd.c: Remove variable length arrays.
3526
3527
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3528
3529
	* grub-core/fs/ufs.c: Remove variable length arrays.
3530
3531
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3532
3533
	* grub-core/fs/ntfs.c: Add comment about fixed allocation size.
3534
3535
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3536
3537
	* grub-core/fs/zfs.c: Remove variable length arrays.
3538
	Reduces zfs.mod by 160 bytes (208 compressed).
3539
3540
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3541
3542
	* grub-core/fs/zfs/zfs.c (check_pool_label): Fix memory leak.
3543
3544
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3545
3546
	* grub-core/net/arp.c: Remove variable length arrays.
3547
	* grub-core/net/bootp.c: Likewise.
3548
	* grub-core/net/dns.c: Likewise.
3549
	* grub-core/net/icmp6.c: Likewise.
3550
	* grub-core/net/net.c: Likewise.
3551
3552
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3553
3554
	* grub-core/fs/ntfs.c: Remove variable length arrays.
3555
	Increases ntfs.mod by 64 bytes (but decreases by 3 when
3556
	compressed).
3557
3558
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3559
3560
	* grub-core/fs/hfs.c: Remove variable length arrays.
3561
	Reduces hfs.mod by 8 bytes (52 compressed).
3562
3563
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3564
3565
	* grub-core/fs/udf.c: Remove variable length arrays.
3566
	Increases udf.mod by 128 bytes (but decreases by 13 when
3567
	compressed).
3568
3569
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3570
3571
	* grub-core/fs/iso9660.c: Remove variable length arrays.
3572
	Increases iso9660.mod by 200 bytes (but decreases by 79 when
3573
	compressed).
3574
3575
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3576
3577
	* grub-core/fs/nilfs2.c: Remove variable length arrays.
3578
	Increases nilfs2.mod by 24 bytes (but decreases by 115 when
3579
	compressed).
3580
3581
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3582
3583
	* grub-core/fs/xfs.c: Remove variable length arrays.
3584
	Reduces xfs.mod by 40 bytes (43 compressed).
3585
3586
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3587
3588
	* grub-core/fs/fshelp.c: Remove variable length arrays.
3589
	Reduces fshelp.mod by 116 bytes (23 compressed).
3590
3591
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3592
3593
	* grub-core/normal/completion.c: Remove variable length arrays.
3594
	* grub-core/normal/menu_entry.c: Likewise.
3595
3596
	Reduces normal.mod by 496 bytes.
3597
3598
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3599
3600
	* grub-core/fs/minix.c: Remove variable length arrays. Reduces jfs.mod
3601
	by 356 bytes (158 compressed).
3602
3603
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3604
3605
	* grub-core/fs/jfs.c: Remove variable length arrays. Reduces jfs.mod
3606
	by 364 bytes (169 compressed).
3607
3608
2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
3609
3610
	* grub-core/fs/bfs.c: Remove variable length arrays. Reduces afs.mod and
3611
	bfs.mod size by 556 resp 740 bytes (288 resp 334 compressed).
3612
	* include/grub/types.h (grub_unaligned_uint64_t): New type.
3613
3614
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3615
3616
	Lift 255x255 erminal sie restriction to 65535x65535. Also change from
3617
	bitmasks to small structures of size chosen to fit in registers.
3618
3619
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3620
3621
	* conf/Makefile.common: Use -freg-struct-return on i386. This
3622
	decreases code size and improves performance.
3623
3624
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3625
3626
	* grub-core/osdep/unix/exec.c: Fix compilation error on emu.
3627
3628
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3629
3630
	* grub-core/kern/misc.c (grub_vsnprintf_real): Fix formatting of
3631
	"(null)" string.
3632
	Simplify expressions to save around 256 bytes in kernel.img.
3633
	* tests/printf_unit_test.c (printf_test): Add "(null)" tests.
3634
3635
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3636
3637
	* grub-core/tests/video_checksum.c (grub_video_capture_write_bmp):
3638
	Use GRUB_UTIL_FD_O_* rather than O_*.
3639
3640
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3641
3642
	Add haiku-specific functions.
3643
3644
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3645
3646
	* grub-core/kern/emu/hostdisk.c: Remove few leftover includes.
3647
3648
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3649
3650
	Move stat () and device mode checking into OS-dependent files as
3651
	long as performance doesn't suffer.
3652
3653
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3654
3655
	Split make_system_path_relative_to_its_root into separate file
3656
	relpath.c from getroot.c as it's common between unix and haiku
3657
	but otherwise haiku doesn't use any functions from unix getroot.c.
3658
3659
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3660
3661
	* grub-core/osdep/aros/hostdisk.c (grub_util_is_directory):
3662
	New function.
3663
	(grub_util_is_special_file): Likewise.
3664
3665
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3666
3667
	* grub-core/osdep/unix/getroot.c: Move exec functions to ...
3668
	* osdep/unix/exec.c: ... here. Add few additional exec_* variants.
3669
3670
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3671
3672
	* grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Define size_t to
3673
	grub_size_t. This fixes the case when size_t mismatches grub_size_t.
3674
3675
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3676
3677
	* util/grub-mkimagexx.c (make_reloc_section): Fix memory leak.
3678
	(load_image): Likewise.
3679
3680
2013-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
3681
3682
	* util/grub-render-label.c: Move backend part to ...
3683
	* util/render-label.c: ... here.
3684
3685
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3686
3687
	* grub-core/osdep/random.c: Use unix/random.c on haiku. Haiku uses
3688
	yarrow (by B. Schneier et al) for its /dev/urandom (similar to FreeBSD).
3689
3690
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3691
3692
	* grub-core/osdep/generic/blocklist.c: Add missing include to string.h.
3693
3694
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3695
3696
	* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Handle
3697
	CD-ROM in case when it's declared as having subpartitions.
3698
3699
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3700
3701
	Don't add -lm on haiku.
3702
3703
	* configure.ac: Define BUILD_LIBM to -lm on most platforms
3704
	and empty on haiku.
3705
	* grub-core/Makefile.am (gentrigtables): Use $(BUILD_LIBM) rather than
3706
	-lm.
3707
3708
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3709
3710
	* configure.ac: Use -melf_*_haiku as target on haiku.
3711
3712
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3713
3714
	* Makefile.util.def: Add util/setup.c to extra_dist.
3715
3716
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3717
3718
	* grub-core/kern/i386/pc/mmap.c (grub_machine_mmap_iterate): Pass
3719
	unknown types through.
3720
3721
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3722
3723
	* grub-core/osdep/unix/getroot.c (grub_util_check_block_device): Remove.
3724
	(grub_util_check_char_device): Likewise.
3725
	* include/grub/emu/getroot.h: Likewise.
3726
3727
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3728
3729
	* grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Use define for defining
3730
	memset rather than inline static function.
3731
3732
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3733
3734
	* grub-core/lib/xzembed/xz_config.h: Enable all bcj filters when
3735
	not doing embedded decompressor.
3736
3737
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3738
3739
	* grub-core/disk/ldm.c: Rename variables and arguments to prevent
3740
	shadowing.
3741
	* grub-core/kern/disk.c: Likewise.
3742
	* grub-core/kern/misc.c: Likewise.
3743
	* include/grub/parser.h: Likewise.
3744
	* include/grub/script_sh.h: Likewise.
3745
	* include/grub/zfs/zfs.h: Likewise.
3746
3747
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3748
3749
	* grub-core/disk/luks.c (configure_ciphers): Fix spurious warning.
3750
3751
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3752
3753
	* grub-core/fs/zfs/zfs_lz4.c: Check that __INTEL_COMPILER is
3754
	defined before trying to use it.
3755
3756
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3757
3758
	* grub-core/fs/affs.c (grub_affs_create_node): Fix uninited value
3759
	warning.
3760
3761
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3762
3763
	* include/grub/dl.h: Remove double declaration of GRUB_MOD_DEP.
3764
	Use __unused__ rather than __used__ on gcc < 3.2.
3765
3766
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3767
3768
	* include/grub/setjmp.h: Define RETURNS_TWICE. Keep it empty for
3769
	gcc < 4.0.
3770
	* include/grub/*/setjmp.h: USe RETURNS_TWICE.
3771
3772
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3773
3774
	* grub-core/disk/dmraid_nvidia.c: Fix potentially uninited "layout".
3775
3776
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3777
3778
	* include/grub/misc.h: Don't use warn_unused_result on gcc < 3.4.
3779
	* include/grub/emu/misc.h: Likewise.
3780
3781
2013-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
3782
3783
	* grub-core/term/i386/pc/vga_text.c: Remove extra declaration of
3784
	cur_color.
3785
3786
2013-10-18  Vladimir Testov  <vladimir.testov@rosalab.ru>
3787
3788
	* grub-core/tests/checksums.h: Regenerated due to progress bar
3789
	get_minimal_size changes.
3790
3791
2013-10-17  BVK Chaitanya  <bvk.groups@gmail.com>
3792
3793
	Added `tr' command support.
3794
3795
	* grub-core/commands/tr.c: New file.
3796
	* grub-core/Makefile.core.def: Build rules for new module.
3797
3798
	* tests/grub_cmd_tr.in: New test.
3799
	* Makefile.util.def: Build rules for new test.
3800
3801
2013-10-17  Vladimir Testov  <vladimir.testov@rosalab.ru>
3802
3803
	* grub-core/gfxmenu/gui_progress_bar.c: Sanity checks added.
3804
3805
2013-10-17  Vladimir Testov  <vladimir.testov@rosalab.ru>
3806
3807
	* grub-core/gfxmenu/gui_progress_bar.c: New option ``highlight_overlay``
3808
	* docs/gurb.texi: Likewise.
3809
3810
2013-10-17  Vladimir Testov  <vladimir.testov@rosalab.ru>
3811
3812
	* grub-core/gfxmenu/gui_progress_bar.c (draw_pixmap_bar): Fixed bug.
3813
	Pixmap highlighted section with east and west slices was displayed
3814
	incorrectly due to negative width of the central slice.
3815
3816
2013-10-17  Vladimir Testov  <vladimir.testov@rosalab.ru>
3817
3818
	* docs/grub.texi: Graphical options information update.
3819
	Removed outdated. Updated current. Inserted missed.
3820
3821
2013-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
3822
3823
	* docs/grub.texi: Mention few new platform-specific commands.
3824
3825
2013-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
3826
3827
	* grub-core/script/yylex.l: Fix LSQBR2 and RSQBR2. It's not
3828
	currently used so this doesn't really have any effect.
3829
	Reported by:  	Douglas Ray <dougray>
3830
3831
2013-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
3832
3833
	* autogen.sh: Don't set LC_CTYPE as it doesn't create problem for
3834
	compilation but prevents gcc from displaying messages in non-Latin
3835
	alphabets.
3836
	* conf/Makefile.common: Likewise.
3837
3838
2013-10-16  Hiroyuki YAMAMORI
3839
3840
	Handle Japanese special keys.
3841
	Reported by: Hiroyuki YAMAMORI.
3842
	Codes supplied by: Hiroyuki YAMAMORI.
3843
3844
2013-10-16  Vladimir Testov  <vladimir.testov@rosalab.ru>
3845
3846
	* grub-core/gfxmenu/gui_list.c: Scrollbar sanity checks added.
3847
3848
2013-10-16  Vladimir Testov  <vladimir.testov@rosalab.ru>
3849
3850
	* grub-core/gfxmenu/gui_list.c: New option `item_pixmap_style`.
3851
	* docs/grub.texi: Likewise.
3852
3853
2013-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
3854
3855
	* grub-core/osdep/unix/hostdisk.c (grub_util_fd_read): Return correct
3856
	value in case of incomplete read.
3857
	(grub_util_fd_write): Likewise.
3858
3859
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3860
3861
	* util/editenv.c (grub_util_create_envblk_file): Use grub_util_rename.
3862
3863
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3864
3865
	* util/grub-editenv.c (create_envblk_file): More from here ...
3866
	* util/editenv.c (grub_util_create_envblk_file): ... to here.
3867
3868
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3869
3870
	* grub-core/osdep/unix/getroot.c (grub_guess_root_devices):
3871
	canonicalize file name before doing the rest.
3872
3873
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3874
3875
	* include/grub/osdep/hostfile_windows.h: Add missing ftello for
3876
	mingw32.
3877
3878
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3879
3880
	Define grub_util_is_directory/regular/special_file and
3881
	use OS-dependent versions rather than to rely on stat().
3882
3883
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3884
3885
	* util/grub-mkimage.c: Move backend part to ...
3886
	* util/mkimage.c: ... here.
3887
3888
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3889
3890
	Allow compilation with mingw64 albeit with warnings due to lack of
3891
	%llx/%llu.
3892
3893
	* grub-core/gnulib/msvc-inval.c: Use __cdecl rather than cdecl.
3894
	* grub-core/lib/posix_wrap/wchar.h: Define wint_t.
3895
	* grub-core/lib/posix_wrap/wctype.h: Define wctype_t.
3896
	* include/grub/osdep/hostfile_windows.h: Don't define fseeko/ftello
3897
	on mingw64.
3898
	* include/grub/types.h: Allow sizeof (long) != sizeof (void *).
3899
3900
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3901
3902
	Remove leftover references to some of the system headers.
3903
3904
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3905
3906
	* grub-core/disk/geli.c (grub_util_get_geli_uuid): Close handle after
3907
	read.
3908
3909
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3910
3911
	* grub-core/disk/cryptodisk.c: Use grub_util_fd_strerror instead
3912
	of strerror.
3913
3914
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3915
3916
	Split out blocklist retrieving from setup.c to
3917
	grub-core/osdep/blocklist.c and add windows implementation since
3918
	generic version doesn't work on NTFS on Windows due to aggressive
3919
	unflushable cache.
3920
3921
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3922
3923
	Split grub-setup.c into frontend (grub-setup.c) and backend (setup.c)
3924
	files.
3925
3926
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3927
3928
	* grub-core/osdep/windows/hostdisk.c (grub_util_fd_strerror):
3929
	Cut tailing newline. Remove arbitrary limitation. Always use
3930
	grub_util_tchar_to_utf8.
3931
3932
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3933
3934
	* grub-core/kern/misc.c (grub_vsnprintf_real): Handle %% properly.
3935
	* tests/printf_unit_test.c (printf_test): Add %% tests.
3936
	Reported by: Paulo Flabiano Smorigo.
3937
3938
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3939
3940
	* grub-core/osdep/windows/hostdisk.c (fsync) [__MINGW32__]: Really
3941
	implement fsync.
3942
3943
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3944
3945
	* configure.ac: Check for nvlist_lookup_string in nvpair since we
3946
	use nvlist_lookup_string and don't use nvlist_print.
3947
3948
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3949
3950
	Add wrappers around rename, unlink, mkdir, opendir, readdir and
3951
	closedir to handle filename charset translation.
3952
3953
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3954
3955
	* include/grub/emu/hostdisk.h: Move file operations to
3956
	* include/grub/emu/hostfile.h: ... here.
3957
3958
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3959
3960
	* grub-core/osdep/windows/hostdisk.c (canonicalize_file_name): Handle
3961
	unicode path.
3962
3963
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3964
3965
	* grub-core/tests/checksums.h: Regenerate due to swiss.sed change.
3966
3967
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3968
3969
	Move cpu time retrieval to separate grub_util_get_cpu_time_ms
3970
	and remove export.h.
3971
3972
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3973
3974
	* grub-core/kern/emu/error.c: Removed.
3975
	* grub-core/Makefile.core.def (kernel): Don't add error.c and progname.c
3976
	explicitly as it's already in libgnu.a.
3977
3978
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3979
3980
	* grub-core/osdep/windows/emuconsole.c: Add missing config.h and
3981
	config-util.h include.
3982
3983
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3984
3985
	Split emunet into platform-dependent and GRUB-binding parts. Keep
3986
	platform-dependent part in kernel for easy access to OS functions.
3987
3988
2013-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
3989
3990
	* grub-core/tests/video_checksum.c: Use grub_util_fd_* rather than
3991
	open/read/write.
3992
3993
2013-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
3994
3995
	* grub-core/osdep/windows/emuconsole.c: New file.
3996
3997
2013-10-14  Andrey Borzenkov <arvidjaar@gmail.com>
3998
3999
	* conf/Makefile.extra-dist: Add osdep/*/init.c
4000
4001
2013-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
4002
4003
	* Makefile.am: Use TARGET_OBJCOPY when doing objcopy for target.
4004
4005
2013-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
4006
4007
	* util/grub-probe.c (probe): Separate different drives in hint-str
4008
	by spaces and not newlines.
4009
	* util/grub-mkconfig_lib.in: Handle multidevice filesystem.
4010
4011
2013-10-14  Andrey Borzenkov <arvidjaar@gmail.com>
4012
4013
	* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name):
4014
	Handle CD-ROMs.
4015
4016
2013-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
4017
4018
	Pass-through unknown E820 types. It required reorganisation of mmap
4019
	module.
4020
4021
2013-10-14  Andrey Borzenkov <arvidjaar@gmail.com>
4022
4023
	* Makefile.util.def: Add osdep/init.c to grub-mount files.
4024
4025
2013-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
4026
4027
	Make grub_util_fd_seek match behaviour of other grub_util_fd_* and
4028
	fseeko.
4029
4030
2013-10-14  qwertial  <qwertial>
4031
4032
	* grub-core/gdb_grub.in: Fix overflow and wrong field.
4033
4034
2013-10-14  Jon McCune <jonmccune@google.com>
4035
4036
	* docs/grub.texi: Document new signatures possibility.
4037
4038
2013-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
4039
4040
	Define GRUB_UTIL_FD_O_* and always use them with grub_util_fd_open.
4041
4042
2013-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
4043
4044
	* include/grub/osdep/hostfile_windows.h (grub_util_utf8_to_tchar): Add
4045
	missing prototype.
4046
	(grub_util_tchar_to_utf8): Likewise.
4047
4048
2013-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
4049
4050
	* grub-core/Makefile.core.def: Add osdep/init.c on emu.
4051
	* grub-core/kern/emu/main.c: Add missing include.
4052
	* grub-core/osdep/basic/init.c (grub_util_host_init) [!GRUB_UTIL]:
4053
	Don't call grub_util_init_nls.
4054
	* grub-core/osdep/windows/init.c (grub_util_host_init) [!GRUB_UTIL]:
4055
	Likewise.
4056
4057
2013-10-13  Vladimir Serbinenko  <phcoder@gmail.com>
4058
4059
	* util/misc.c (grub_util_get_image_size): Use FILE functions rather than
4060
	stat.
4061
4062
2013-10-13  Vladimir Serbinenko  <phcoder@gmail.com>
4063
4064
	* util/grub-editenv.c: Remove leftover set_program_name and init_nls.
4065
4066
2013-10-13  Vladimir Serbinenko  <phcoder@gmail.com>
4067
4068
	* include/grub/misc.h: Use gnu_printf only on gcc 4.4 or later.
4069
4070
2013-10-13  Vladimir Serbinenko  <phcoder@gmail.com>
4071
4072
	Add a wrapper for fopen. On unix-like systems just pass-through. On
4073
	windows use unicode version.
4074
4075
2013-10-13  Vladimir Serbinenko  <phcoder@gmail.com>
4076
4077
	Move set_program_name and init_nls to host_init. On windows
4078
	fix in this fuction console and argument charset as well.
4079
4080
2013-10-12  Andrey Borzenkov <arvidjaar@gmail.com>
4081
4082
	Fix inconsistent use of GRUB_CRYPTODISK_ENABLE and
4083
	GRUB_ENABLE_CRYPTODISK.
4084
4085
	* util/grub-install.in: Rename all GRUB_CRYPTODISK_ENABLE to
4086
	GRUB_ENABLE_CRYPTODISK.
4087
	* util/grub-mkconfig_lib.in: Likewise.
4088
4089
2013-10-12  Christian Cier-Zniewski <c.cier@gmx.de>
4090
4091
	* docs/grub.texi (Vendor power-on keys): Add Dell Latitude E4300.
4092
4093
2013-10-12  Melki Christian  <Christian.melki@saabgroup.com>
4094
4095
	* grub-core/term/at_keyboard.c [DEBUG_AT_KEYBOARD]: Fix compilation
4096
	error when enabling debug.
4097
4098
2013-10-12  Ilya Bakulin <Ilya_Bakulin@genua.de>
4099
4100
	* configure.ac: Use -melf_*_obsd on openbsd.
4101
4102
2013-10-12  Vladimir Serbinenko  <phcoder@gmail.com>
4103
4104
	* grub-core/kern/arm/dl_helper.c: Use more proper %p for pointer.
4105
4106
2013-10-12  Vladimir Serbinenko  <phcoder@gmail.com>
4107
4108
	* include/grub/misc.h: Use gnu_printf rather than printf as format
4109
	template since our functions are independent of libc.
4110
4111
2013-10-11  Vladimir Serbinenko  <phcoder@gmail.com>
4112
4113
	* util/grub-setup.c (setup): Move copying of partition table as
4114
	futher up as possible to avoid possible overwrite by floppy routines.
4115
4116
2013-10-11  Vladimir Serbinenko  <phcoder@gmail.com>
4117
4118
	* grub-core/fs/fat.c: Fix handling of exfat contiguous files.
4119
4120
2013-10-10  Vladimir Testov  <vladimir.testov@rosalab.ru>
4121
4122
	* grub-core/gfxmenu/gui_list.c: New option `scrollbar_thumb_overlay`.
4123
	* docs/grub.texi: Likewise.
4124
4125
2013-10-10  Vladimir Serbinenko  <phcoder@gmail.com>
4126
4127
	* util/getroot.c (make_device_name): Remove dos_part and bsd_part as
4128
	it's mostly unused. Move vestiges to the callers.
4129
4130
2013-10-10  Vladimir Serbinenko  <phcoder@gmail.com>
4131
4132
	* util/grub-mkpasswd-pbkdf2.c: Remove temporary buffers for hex
4133
	version of salt and hash. Use grub_snprintf rather than snprintf.
4134
4135
2013-10-10  Vladimir Serbinenko  <phcoder@gmail.com>
4136
4137
	* docs/grub.texi: Fix problem with braces.
4138
4139
2013-10-10  Vladimir Serbinenko  <phcoder@gmail.com>
4140
4141
	* conf/Makefile.extra-dist: Fix extra-dist list.
4142
	* grub-core/Makefile.core.def: Likewise.
4143
4144
2013-10-10  Vladimir Serbinenko  <phcoder@gmail.com>
4145
4146
	* docs/grub.texi: Document disk names used on Windows and AROS.
4147
4148
2013-10-10  Vladimir Serbinenko  <phcoder@gmail.com>
4149
4150
	* grub-core/osdep/aros/getroot.c: Change to //: prefix as discussed
4151
	with AROS devs.
4152
	* grub-core/osdep/aros/hostdisk.c: Likewise.
4153
4154
2013-10-10  Vladimir Serbinenko  <phcoder@gmail.com>
4155
4156
	Avoid including hostfile.h when not necessarry as it pulls
4157
	in OS-specific headers which may redefine generic names
4158
	like "far".
4159
4160
2013-10-09  Vladimir Testov  <vladimir.testov@rosalab.ru>
4161
4162
	* grub-core/gfxmenu/gui_list.c: New options for scrollbar padding:
4163
	scrollbar_left_pad, scrollbar_right_pad, scrollbar_top_pad,
4164
	scrollbar_bottom_pad
4165
	* docs/grub.texi: Likewise.
4166
4167
2013-10-09  Vladimir Testov  <vladimir.testov@rosalab.ru>
4168
4169
	* grub-core/gfxmenu/gui_list.c (list_destroy): Fixed memory leak.
4170
4171
2013-10-09  Vladimir Serbinenko  <phcoder@gmail.com>
4172
4173
	Move OS-dependent file definitions to include/grub/osdep/hostfile*.h.
4174
4175
2013-10-09  Vladimir Serbinenko  <phcoder@gmail.com>
4176
4177
	* include/grub/emu/hostdisk.h (grub_hostdisk_linux_find_partition):
4178
	Removed.
4179
	* grub-core/osdep/linux/hostdisk.c (grub_hostdisk_linux_find_partition):
4180
	Made static.
4181
4182
2013-10-09  Vladimir Serbinenko  <phcoder@gmail.com>
4183
4184
	* include/grub/emu/getroot.h (grub_util_find_hurd_root_device): Remove
4185
	leftover.
4186
4187
2013-10-09  Vladimir Serbinenko  <phcoder@gmail.com>
4188
4189
	Move OS-specific driver configuration to grub_util_fd_open. This
4190
	moves OS-dependent parts from kern/emu/hostdisk.c to
4191
	grub-core/osdep/*/hostdisk.c.
4192
4193
2013-10-09  Vladimir Serbinenko  <phcoder@gmail.com>
4194
4195
	* util/grub-mkimage.c (generate_image): Use size_t instead of
4196
	grub_size_t.
4197
	* util/grub-mkimagexx.c (locate_sections): Likewise.
4198
	(load_image): Likewise.
4199
4200
2013-10-09  Vladimir Serbinenko  <phcoder@gmail.com>
4201
4202
	* util/misc.c (grub_util_write_image_at): Don't use PRIxGRUB_SIZE for
4203
	size_t.
4204
	(grub_util_write_image): Likewise.
4205
4206
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4207
4208
	* grub-core/osdep/basic/random.c: New file. Abort on an attempt to
4209
	get random when no RNG is available.
4210
	* grub-core/osdep/random.c: Use basic/random.c on OS out of whitelist.
4211
4212
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4213
4214
	* include/grub/util/lvm.h: Removed.
4215
4216
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4217
4218
	* grub-core/kern/emu/misc.c (fsync) [__MINGW32__]: Move to ...
4219
	* grub-core/osdep/windows/hostdisk.c (fsync) [__MINGW32__]: ... here.
4220
4221
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4222
4223
	* grub-core/osdep/windows/sleep.c: Add missing config.h.
4224
4225
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4226
4227
	* grub-core/kern/emu/misc.c (grub_get_rtc): Remove (it's a leftover).
4228
4229
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4230
4231
	* grub-core/net/drivers/emu/emunet.c: Move to ..
4232
	* grub-core/osdep/linux/emunet.c: ..here.
4233
4234
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4235
4236
	* util/ieee1275/ofpath.c: Move to ...
4237
	* grub-core/osdep/linux/ofpath.c: ..here, split stub into ...
4238
	* grub-core/osdep/basic/ofpath.c: ..here.
4239
4240
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4241
4242
	Move password-querying (util-version) routines to grub-core/osdep.
4243
4244
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4245
4246
	Move sleep routines to grub-core/osdep.
4247
4248
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4249
4250
	Move OS-dependent files to grub-core/osdep and document it.
4251
4252
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4253
4254
	* grub-core/kern/emu/misc.c (canonicalize_file_name): Move to ...
4255
	* grub-core/kern/emu/hostdisk_*.c (canonicalize_file_name): ... here.
4256
4257
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4258
4259
	* grub-core/kern/arm/misc.S: Remove leftover ARM and THUMB.
4260
4261
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4262
4263
	* util/misc.c: Remove leftover inclusion of malloc.h.
4264
4265
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4266
4267
	* include/grub/setjmp.h: Remove leftover GRUBOF.
4268
4269
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4270
4271
	* util/raid.c: Fold into ...
4272
	* util/getroot_linux.c: ... here. Make all functions static.
4273
4274
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4275
4276
	* grub-core/fs/zfs/zfs_lz4.c: Switch from ad-hoc endiannes and width
4277
	macros to GRUB ones.
4278
4279
2013-10-08  Vladimir Testov  <vladimir.testov@rosalab.ru>
4280
4281
	* grub-core/gfxmenu/gui_list.c (draw_scrollbar): Fixed rare
4282
	occasional bug. If there are too many boot entries or too low
4283
	scrollbar height then we need to use another formula to calculate
4284
	the position and size of the scrollbar thumb.
4285
4286
2013-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
4287
4288
	* util/random_unix.c: Add NetBSD, Solaris and Mac OS X to verified list.
4289
4290
2013-10-08  Vladimir Testov  <vladimir.testov@rosalab.ru>
4291
4292
	* grub-core/gfxmenu/gui_list.c: New option `scrollbar-slice`.
4293
	* docs/grub.texi: Likewise.
4294
4295
2013-10-08  Vladimir Testov  <vladimir.testov@rosalab.ru>
4296
4297
	* grub-core/gfxmenu/gui_list.c: Draw the scrollbar in a separate
4298
	viewport.
4299
4300
2013-10-08  Vladimir Testov  <vladimir.testov@rosalab.ru>
4301
4302
	* grub-core/gfxmenu/gui_list.c (list_get_minimal_size): Corrected
4303
	minimal width calculations.
4304
4305
2013-10-07  Vladimir Serbinenko  <phcoder@gmail.com>
4306
4307
	* docs/grub.texi: Update note on colors on emu console.
4308
4309
2013-10-07  Vladimir Serbinenko  <phcoder@gmail.com>
4310
4311
	* grub-core/fs/ufs.c (grub_ufs_get_file_block): Give GRUB_ERR_BAD_FS
4312
	for quadruple indirect rather than GRUB_ERR_NOT_IMPLEMENTED_YET as
4313
	it's FS and not GRUB limitation.
4314
4315
2013-10-07  Vladimir Serbinenko  <phcoder@gmail.com>
4316
4317
	* grub-core/kern/arm/efi/startup.S: Remove thumb leftover.
4318
4319
2013-10-07  Vladimir Serbinenko  <phcoder@gmail.com>
4320
4321
	* grub-core/kern/arm/efi/init.c: Rewrite timer fucntion.
4322
4323
2013-10-04  Samuel Thibault  <samuel.thibault@ens-lyon.org>
4324
4325
	* util/grub.d/10_hurd.in: Use `version_find_latest` to sort gnumach
4326
	kernels by version order.
4327
4328
2013-10-04  Vladimir Serbinenko  <phcoder@gmail.com>
4329
4330
	* util/random_unix.c: Add kFreeBSD to the list of secure RNG.
4331
4332
2013-10-04  Vladimir Serbinenko  <phcoder@gmail.com>
4333
4334
	Add AROS hostdisk and getroot routines.
4335
4336
2013-10-04  Vladimir Serbinenko  <phcoder@gmail.com>
4337
4338
	Make cryptodisk and diskfilter probe data retrievable programmatically
4339
	and not just printable.
4340
4341
2013-10-04  Vladimir Serbinenko  <phcoder@gmail.com>
4342
4343
	Split random retrieving code into separate files.
4344
4345
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4346
4347
	* grub-core/kern/arm/dl.c (do_relocations): Accept and ignore
4348
	R_ARM_V4BX.
4349
4350
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4351
4352
	* grub-core/tests/video_checksum.c: Increase robustness to out of memory
4353
	condition.
4354
	* grub-core/tests/fake_input.c: Likewise.
4355
	* grub-core/tests/cmdline_cat_test.c: Likewise.
4356
4357
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4358
4359
	* grub-core/video/capture.c: Do not do finalization when .fini
4360
	is called as there is explicit capture_end.
4361
4362
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4363
4364
	* grub-core/term/gfxterm.c: Add flag "functional" to skip input when
4365
	changing windows to avoid crash.
4366
4367
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4368
4369
	* grub-core/kern/arm/cache.c: Add v5 write-through cache support.
4370
4371
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4372
4373
	* po/exclude.pot: Add several strings to exclude.
4374
4375
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4376
4377
	* tests/gettext_strings_test.in: Add getroot_*.c to exclude list.
4378
4379
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4380
4381
	* autogen.sh: Add ./util/grub-gen-widthspec.c and
4382
	./util/grub-gen-asciih.c to exclude list.
4383
4384
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4385
4386
	* grub-core/gfxmenu/theme_loader.c (theme_set_string): Fix memory leak
4387
	and don't mark error strings for translation.
4388
4389
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4390
4391
	* grub-core/disk/uboot/ubootdisk.c (uboot_disk_open): Use grub_error
4392
	properly in case of missing block size.
4393
4394
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4395
4396
	* grub-core/lib/arm/setjmp.S: Add missing license section.
4397
4398
2013-10-03  Vladimir Serbinenko  <phcoder@gmail.com>
4399
4400
	* po/swiss.sed: Add replacement for key names and for term computer.
4401
4402
2013-10-02  Vladimir Testov <vladimir.testov@rosalab.ru>
4403
4404
	* grub-core/gfxmenu/theme_loader.c: New global options for the
4405
	theme background image handling. desktop-image-scale-method,
4406
	desktop-image-h-align, desktop-image-v-align.
4407
	* grub-core/gfxmenu/view.c: Likewise.
4408
	* include/gfxmenu_view.h: Likewise.
4409
	* include/bitmap_scale.h: Proportional scale functions introduced.
4410
	* grub-core/video/bitmap_scale.c: Likewise. Verification checks are
4411
	put in a separate functions. GRUB_ERR_BUG is set for grub_error in
4412
	cases of unexpected input variables for scale functions.
4413
	* docs/grub.texi: Updated documentation for new options.
4414
4415
2013-10-02  Vladimir Serbinenko  <phcoder@gmail.com>
4416
4417
	* grub-core/video/readers/png.c: Support narrow (4-/2-/1-bpp) PNG.
4418
4419
2013-10-01  Vladimir Testov  <vladimir.testov@rosalab.ru>
4420
4421
	* grub-core/tests/checksums.h: Corrected due to changes in
4422
	bilinear interpolation function.
4423
4424
2013-10-01  Vladimir Testov  <vladimir.testov@rosalab.ru>
4425
4426
	* grub-core/video/bitmap_scale.c (scale_bilinear): Increased precision
4427
	to eliminate artefacts in bilinear interpolation.
4428
4429
2013-09-28  Vladimir Serbinenko  <phcoder@gmail.com>
4430
4431
	* grub-core/video/readers/tga.c: Support paletted tga.
4432
4433
2013-09-28  Vladimir Serbinenko  <phcoder@gmail.com>
4434
4435
	* grub-core/video/readers/jpeg.c (grub_jpeg_decode_data): Remove
4436
	incorrect cbcr setting when in color mode.
4437
4438
2013-09-28  Vladimir Serbinenko  <phcoder@gmail.com>
4439
4440
	* grub-core/video/readers/png.c: Support paletted images and clean up
4441
	greyscale support.
4442
4443
2013-09-28  Vladimir Serbinenko  <phcoder@gmail.com>
4444
4445
	* grub-core/term/terminfo.c (grub_terminfo_readkey): Fix
4446
	usage of wrong table which resulted in mishandling of 4-byte
4447
	sequences.
4448
4449
2013-09-28  Vladimir Serbinenko  <phcoder@gmail.com>
4450
4451
	* grub-core/term/terminfo.c: Add Home and End key sequences.
4452
4453
2013-09-27  Vladimir Serbinenko  <phcoder@gmail.com>
4454
4455
	* grub-core/video/readers/png.c (grub_png_decode_image_header):
4456
	Fix formula for computing total number of bytes.
4457
4458
2013-09-27  Vladimir Serbinenko  <phcoder@gmail.com>
4459
4460
	* grub-core/video/readers/tga.c: Reorganize to separate RLE and
4461
	image processing, fix big-endian and support grayscale.
4462
4463
2013-09-27  Vladimir Serbinenko  <phcoder@gmail.com>
4464
4465
	* grub-core/video/fb/video_fb.c (grub_video_fb_create_render_target):
4466
	Correctly will with maximum transparency when using index color.
4467
4468
2013-09-27  Vladimir Serbinenko  <phcoder@gmail.com>
4469
4470
	* grub-core/video/readers/png.c: Support grayscale
4471
4472
2013-09-27  Vladimir Serbinenko  <phcoder@gmail.com>
4473
4474
	* grub-core/video/readers/jpeg.c: Support grayscale.
4475
4476
2013-09-26  Jon McCune <jonmccune@google.com>
4477
4478
	* grub-core/commands/loadenv.c: Support skipping signature check
4479
	and variable names filtering.
4480
4481
2013-09-24  Vladimir Serbinenko  <phcoder@gmail.com>
4482
4483
	* grub-core/kern/emu/hostdisk_unix.c: Declare AROS as non-unix.
4484
	* grub-core/kern/emu/hostfs.c: Likewise.
4485
	* util/getroot_unix.c: Likewise.
4486
4487
2013-09-24  Vladimir Serbinenko  <phcoder@gmail.com>
4488
4489
	* include/grub/emu/hostdisk.h (GRUB_FD_STAT_IS_FUNTIONAL): New define.
4490
	Migrate all explicit defines to this new one.
4491
4492
2013-09-24  Vladimir Serbinenko  <phcoder@gmail.com>
4493
4494
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Use
4495
	grub_util_fd_strerror when using grub_util_fd_*.
4496
	(grub_util_fd_open_device): Likewise.
4497
	(grub_util_biosdisk_read): Likewise.
4498
	(grub_util_biosdisk_write): Likewise.
4499
	* grub-core/kern/emu/hostdisk_unix.c (grub_util_fd_open): New function.
4500
	(grub_util_fd_strerror): Likewise.
4501
	(grub_util_fd_sync): Likewise.
4502
	(grub_util_fd_close): Likewise.
4503
	* grub-core/kern/emu/hostdisk_windows.c (grub_util_fd_sync): Likewise.
4504
	(grub_util_fd_close): Likewise.
4505
	(grub_util_fd_strerror): Likewise.
4506
	* include/grub/emu/hostdisk.h (grub_util_fd_close): Make into real
4507
	function proto rather than macro.
4508
	(grub_util_fd_sync): Likewise.
4509
	(grub_util_fd_open): Likewise.
4510
	(grub_util_fd_strerror): New proto.
4511
4512
2013-09-24  Vladimir Serbinenko  <phcoder@gmail.com>
4513
4514
	* util/getroot.c (grub_util_biosdisk_is_present): Don't do stat on
4515
	platforms on which it doesn't work.
4516
4517
2013-09-24  Vladimir Serbinenko  <phcoder@gmail.com>
4518
4519
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Move struct
4520
	stat immediately to where it's used.
4521
4522
2013-09-24  Vladimir Serbinenko  <phcoder@gmail.com>
4523
4524
	* util/getroot.c (grub_util_check_block_device): Move to ...
4525
	* util/getroot_unix.c (grub_util_check_block_device): ... here.
4526
	* util/getroot.c (grub_util_check_char_device): Move to ...
4527
	* util/getroot_unix.c (grub_util_check_char_device): ... here.
4528
4529
2013-09-24  Vladimir Serbinenko  <phcoder@gmail.com>
4530
4531
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_close): Fix
4532
	disk closing logic.
4533
4534
2013-09-24  Andrey Borzenkov <arvidjaar@gmail.com>
4535
4536
	* docs/grub.texi (Simple configuration): Document GRUB_ENABLE_CRYPTODISK.
4537
4538
2013-09-24  Andrey Borzenkov <arvidjaar@gmail.com>
4539
4540
	* docs/grub.texi (File name syntax): Document ZFS filenames
4541
	(/volume@snapshot/...).
4542
4543
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4544
4545
	* grub-core/kern/emu/hostdisk_windows.c (grub_util_get_windows_path):
4546
	Always return full path. Fixes a problem with mkrelpath.
4547
4548
2013-09-23  Paulo Flabiano Smorigo  <pfsmorigo@br.ibm.com>
4549
4550
	* util/grub-install.in: Add GPT PReP support.
4551
	* util/grub-probe.c (probe): Support GPT partition type.
4552
	(main): Support -t gpt_parttype.
4553
4554
2013-09-23  Aleš Nesrsta  <starous@volny.cz>
4555
4556
	* grub-core/bus/usb/ehci.c: SMI disabled in all cases
4557
4558
2013-09-23  Massimo Maggi <me@massimo-maggi.eu>
4559
4560
	* grub-core/fs/zfs/zfs.c (check_pool_label): Check nvlist.
4561
4562
2013-09-23  Tim Hardeck  <thardeck>
4563
4564
	* util/grub.d/10_hurd.in: Filter out character for the class.
4565
	* util/grub.d/10_kfreebsd.in: Likewise.
4566
	* util/grub.d/10_linux.in: Likewise.
4567
	* util/grub.d/20_linux_xen.in: Likewise.
4568
4569
2013-09-23  Melki Christian  <Christian.melki@saabgroup.com>
4570
4571
	* grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Fix the type of
4572
	"changed".
4573
4574
2013-09-23  Josh Triplett <josh@joshtriplett.org>
4575
4576
	* grub-core/boot/i386/pc/lnxboot.S: Re-add support for recording the
4577
	boot partition.
4578
4579
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4580
4581
	* Makefile.util.def (libgrubmods.a): Remove CFLAGS_POSIX as this lib
4582
	doesn't use posix_wrap. Keep literal -fno-builtin however.
4583
4584
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4585
4586
	* conf/Makefile.common (CPPFLAGS_LIBFDT): Remove leftover.
4587
4588
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4589
2013-09-23  neil
4590
4591
	* configure.ac: Do not enable -Wmissing-noreturn as its
4592
	usefulness is limited and creates problems on some OS notably with
4593
	code generated by bison.
4594
4595
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4596
2013-09-23  neil
4597
4598
	* configure.ac: Do not explicitly enable -Waddress as it's not
4599
	supported by all gcc and when it is, it's already enabled by -Wall.
4600
4601
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4602
4603
	* grub-core/video/efi_gop.c (grub_video_gop_setup): Fix a typo which
4604
	desactivated use of EDID at all.
4605
4606
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4607
2013-09-23  neil
4608
4609
	* grub-core/loader/multiboot.c (grub_multiboot_set_console): Always use
4610
	video if no text is available.
4611
4612
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4613
2013-09-23  neil
4614
4615
	* configure.ac: Substitute TARGET_RANLIB.
4616
4617
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4618
2013-09-23  neil
4619
4620
	* grub-core/genmod.sh.in: Remove ./ from TARGET_OBJ2ELF. Add quotes.
4621
4622
	Based on patches from AROS.
4623
4624
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4625
2013-09-23  neil
4626
4627
	* grub-core/Makefile.am: Override STRIP and RANLIB.
4628
	* configure.ac: compute TARGET_RANLIB.
4629
	* INSTALL: Document TARGET_RANLIB
4630
4631
	Based on patches from AROS.
4632
4633
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4634
4635
	* util/getroot.c (grub_util_biosdisk_get_grub_dev): Do not assume
4636
	that floppies are unpartitioned.
4637
4638
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4639
4640
	* util/getroot_unix.c [__MINGW32__ || __CYGWIN__]:
4641
	Define dummy grub_util_pull_lvm_by_command to decrease number of #if's.
4642
4643
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4644
4645
	* grub-core/lib/posix_wrap/sys/types.h: Use OpenBSD approach: it's
4646
	less nice but more portable.
4647
	* grub-core/lib/posix_wrap/wchar.h: Likewise.
4648
4649
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4650
4651
	* include/grub/cryptodisk.h (grub_cryptodisk): Use grub_util_fd_t
4652
	for cheat_fd.
4653
	* grub-core/disk/cryptodisk.c (grub_cryptodisk_open): Use grub_util_*
4654
	functions.
4655
	(grub_cryptodisk_cheat_insert): Likewise.
4656
	(grub_cryptodisk_close): Likewise.
4657
4658
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4659
4660
	* include/grub/emu/misc.h: Remove leftover cygwin definitions.
4661
	Use windows path for DEFAULT_DIRECTORY.
4662
4663
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4664
4665
	* include/grub/i386/setjmp.h: Remove useless #if MINGW where original
4666
	difference was likely just gcc version, not anything mingw-related.
4667
4668
2013-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
4669
4670
	Use Winapi on both cygwin and mingw32 to share more code between both.
4671
4672
2013-09-22  Andrey Borzenkov <arvidjaar@gmail.com>
4673
4674
	* util/grub-install.in: Add --grub-editenv option.
4675
	* util/grub-install_header (grub_compress_file): Explicitly check for
4676
	plain file to avoid cp error.
4677
4678
2013-09-22  Andrey Borzenkov <arvidjaar@gmail.com>
4679
4680
	* docs/grub.texi (Device syntax): Document new LVM UUID based device
4681
	names; fix LVM driver name (lvm, not lv).
4682
	* util/grub-probe.c (probe_abstraction): Support lvmid/xxx device
4683
	names.
4684
4685
2013-09-22  Vladimir Serbinenko  <phcoder@gmail.com>
4686
4687
	* grub-core/kern/emu/hostdisk.c: Disentagle into a series of OS-specific
4688
	files rather than one file with loads of #if's.
4689
	* util/getroot.c: Likewise.
4690
4691
2013-09-22  Vladimir Serbinenko  <phcoder@gmail.com>
4692
4693
	* grub-core/lib/posix_wrap/sys/types.h: Use stddef on *BSD.
4694
4695
2013-09-22  Vladimir Serbinenko  <phcoder@gmail.com>
4696
4697
	* util/grub-mkpasswd-pbkdf2.c (grub_get_random): Add windows and
4698
	GNU/Hurd to the list of checked PRNG.
4699
4700
2013-09-22  Vladimir Serbinenko  <phcoder@gmail.com>
4701
4702
	* configure.ac: On FreeBSD use -melf_*_fbsd format.
4703
4704
2013-09-21  Ales Nesrsta <starous@volny.cz>
4705
4706
	* grub-core/bus/usb/ehci.c: Corrected EHCI QH handling (async./sync.)
4707
4708
2013-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
4709
4710
	* grub-core/disk/diskfilter.c: Handle non-md UUIDs.
4711
	* grub-core/disk/lvm.c: Add LVM UUIDs.
4712
	* util/getroot.c: Use LVM UUIDs whenever possible.
4713
4714
2013-09-19  Andrey Borzenkov <arvidjaar@gmail.com>
4715
4716
	* docs/grub.texi (Networking commands): Add documentation for
4717
	network related commands.
4718
4719
2013-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
4720
4721
	* util/getroot.c (grub_util_open_dm): Check major rather than the name
4722
	to determine if device is handled by devmapper.
4723
	(convert_system_partition_to_system_disk): Likewise.
4724
	(get_dm_uuid): Don't check explicitly if device is mapped, it's
4725
	already done in grub_util_open_dm.
4726
4727
2013-09-19  Leif Lindholm  <leif.lindholm@linaro.org>
4728
4729
	* kern/arm/cache.S: Correct access to ilinesz/dlinesz variables.
4730
	Clean up stack manipulation (sync_caches_armv*)
4731
4732
2013-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
4733
4734
	* util/lvm.c: Remove since unused. Remove remaining references.
4735
4736
2013-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
4737
4738
	Handle the case of partitioned LVM properly.
4739
4740
	* grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
4741
	Stop on meeting LVM, mpath or DMRAID.
4742
	(grub_hostdisk_os_dev_to_grub_drive): Canonicalize os device.
4743
	(read_device_map): Likewise.
4744
	* util/getroot.c (convert_system_partition_to_system_disk): Assume that
4745
	device is full disk rather than erroring out on LVM and similar cases.
4746
4747
2013-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
4748
4749
	* util/grub-mkconfig_lib.in: Keep supplied pkgdatadir if any.
4750
4751
2013-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
4752
4753
	* grub-core/kern/mm.c (grub_mm_init_region): Skip regions less than
4754
	4K before the end.
4755
	Reported by: Leif Lindholm
4756
4757
2013-09-18  Pawel Wojtalczyk <eyak@wp.pl>
4758
2013-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
4759
4760
	* grub-core/term/efi/console.c (grub_console_getkey): Accept VT100-style
4761
	codes.
4762
4763
2013-09-18  Colin Watson  <cjwatson@ubuntu.com>
4764
4765
	* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name_iter):
4766
	Remove no-longer-true __attribute__ ((unused)) on disk parameter.
4767
4768
2013-09-18  Douglas Ray <dougray@cpan.org>
4769
4770
	* util/grub-mkpasswd-pbkdf2.c (grub_get_random): Declare OpenBSD PRNG
4771
	as secure.
4772
4773
2013-09-18  Aleš Nesrsta  <starous@volny.cz>
4774
4775
	* docs/grub.texi: Fix broken link.
4776
4777
2013-09-18  Melki Christian  <Christian.melki@saabgroup.com>
4778
4779
	* grub-core/bus/usb/usb.c (grub_usb_device_initialize): Add condition
4780
	to break endless loop.
4781
4782
2013-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
4783
4784
	* util/grub-fstest.c: Fix several printf formats.
4785
	* util/grub-mkimage.c: Likewise.
4786
	* util/grub-mkimagexx.c: Likewise.
4787
	* util/grub-script-check.c: Likewise.
4788
4789
2013-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
4790
4791
	* grub-core/lib/xzembed/xz_dec_lzma2.c: Make -Wattributes not cause
4792
	error.
4793
4794
2013-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
4795
4796
	* config.h.in [GRUB_BUILD]: Explicitly undefine ENABLE_NLS.
4797
4798
2013-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
4799
4800
	* util/getroot.c (grub_find_device): Use cygwin_conv_path ratherthan
4801
	removed in current versions cygwin_conv_*.
4802
4803
2013-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
4804
4805
	* configure.ac: Disable efiemu runtime on cygwin.
4806
4807
2013-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
4808
4809
	* conf/Makefile.extra-dist: Add missing util/grub-gen-asciih.c,
4810
	util/grub-gen-widthspec.c and util/grub-pe2elf.c.
4811
4812
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4813
4814
	* util/grub-mkpasswd-pbkdf2.c (grub_password_get): Remove extraneous
4815
	error message.
4816
4817
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4818
4819
	* grub-core/lib/crypto.c (grub_password_get) [GRUB_UTIL]: Add
4820
	windows variant.
4821
	* util/grub-mkpasswd-pbkdf2.c: Add windows flavour for retrieving random
4822
	data.
4823
4824
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4825
4826
	* configure.ac: Add -Wl,-melf_i386 and -Wl,-melf_x86_64 systematically
4827
	when on x86 and not cygwin.
4828
	* conf/Makefile.common: Remove unsystematic -Wl,-melf_i386 and
4829
	-Wl,-melf_x86_64.
4830
4831
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4832
4833
	* configure.ac: Set CPP to build one when checkoing for freetype for
4834
	build.
4835
4836
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4837
4838
	* util/grub-mkfont.c [!GRUB_BUILD]: Define my_argp_state.
4839
	[!GRUB_BUILD]: Remove has_argument.
4840
4841
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4842
4843
	* util/ieee1275/ofpath.c (grub_util_devname_to_ofpath) [_WIN32]:
4844
	Replace with a dummy.
4845
4846
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4847
4848
	* configure.ac: Don't change host_os from mingw to cygwin.
4849
4850
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4851
4852
	* configure.ac: Change target_os from windows to cygwin.
4853
4854
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4855
4856
	Handle grub-pe2elf and grub-mkfont for cases when build != host.
4857
4858
	* Makefile.am (build-grub-mkfont): Don't include gnulib.
4859
	(build-grub-gen-asciih): Likewise.
4860
	(build-grub-gen-widthspec): Likewise.
4861
	* Makefile.util.def (grub-pe2elf): Remove.
4862
	* config.h.in [GRUB_BUILD]: Use build rather than host constants.
4863
	* configure.ac: Separate tests for build.
4864
	Move ./build-grub-pe2elf to grub-core.
4865
	Fix typo.
4866
	* grub-core/Makefile.am (build-grub-pe2elf): New target.
4867
	* grub-core/kern/emu/misc.c (xasprintf): Don't compile if GRUB_BUILD is
4868
	defined.
4869
	* include/grub/types.h [GRUB_BUILD]: Use build rather than host
4870
	constants.
4871
	* util/grub-mkfont.c [GRUB_BUILD]: Simplify not to rely on argp.
4872
	* util/grub-pe2elf.c: Simplify not to rely on getopt.
4873
	* util/misc.c (program_name) [GRUB_BUILD]: Define to static string.
4874
4875
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4876
4877
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size): Adapt for
4878
	mingw32 as well based on grub_util_get_disk_size.
4879
	* util/misc.c (grub_util_get_disk_size): Removed. all users switched to
4880
	grub_util_get_fd_size.
4881
	(sync): Removed.
4882
	(fsync): Moved to ...
4883
	* grub-core/kern/emu/misc.c (fsync): ... here.
4884
4885
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4886
4887
	* include/grub/mm.h (grub_extend_alloc): Remove.
4888
	* grub-core/loader/i386/pc/plan9.c: Use own version of
4889
	grub_extend_alloc with appropriate types.
4890
4891
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4892
4893
	* conf/Makefile.common (CFLAGS_GCRY): Add -Wno-redundant-decls.
4894
4895
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4896
4897
	* util/getroot.c: Include sys/wait.h only when we need waitpid.
4898
4899
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4900
4901
	Fix dependencies on cygwin.
4902
4903
	* gentpl.py: Support variable dependencies. Add $TARGET_OBJ2ELF to
4904
	dependencies when used and defined.
4905
	* grub-core/Makefile.core.def (regexp): Add dependency on libgnulib.a.
4906
4907
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4908
4909
	* include/grub/zfs/spa.h (zio_cksum): Add explicit members for mac.
4910
	* grub-core/fs/zfs/zfs.c (zio_read): Don't use casts to retrieve mac.
4911
4912
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4913
4914
	* grub-core/kern/emu/mm.c (grub_memalign): Don't define if there is no
4915
	implementation available to cause compile-time rather than runtime
4916
	error.
4917
4918
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4919
4920
	* util/grub-fstest.c: Don't check for symlinks on windows.
4921
4922
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4923
4924
	* INSTALL: Mention unavailability of man pages when cross-compiling.
4925
4926
2013-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
4927
4928
	* include/grub/crypto.h: Don't declare gcry_log_bug, gcry_log_printf
4929
	and gcry_log_bug.
4930
	* grub-core/lib/libgcrypt_wrap/mem.c: Include g10lib.h
4931
4932
2013-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
4933
4934
	* INSTALL: Document cross-compilation.
4935
	* acinclude.m4: Determine whether nm support -P and --defined-only.
4936
	* configure.ac: Add TARGET_ to all variables pertaining to target
4937
	that don't have it yet.
4938
	* gentpl.py: Likewise.
4939
	* grub-core/Makefile.am: Likewise.
4940
	* grub-core/genmod.sh.in: Likewise.
4941
	* grub-core/gensyminfo.sh.in: Handle OpenBSD and other non-GNU nm
4942
	as well.
4943
4944
2013-08-21  Ilya Bakulin <Ilya_Bakulin@genua.de>
4945
4946
	* configure.ac: Remove -Wempty-body. It's not essential and needs
4947
	recent gcc.
4948
4949
2013-08-21  Ilya Bakulin <Ilya_Bakulin@genua.de>
4950
4951
	* grub-core/kern/emu/hostdisk.c: Add conditionals for OpenBSD.
4952
	* util/getroot.c: Likewise.
4953
4954
2013-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
4955
4956
	* grub-core/disk/ahci.c: Add needed explicit cast.
4957
	* grub-core/lib/backtrace.c: Likewise.
4958
	* grub-core/net/ip.c: Likewise.
4959
	* grub-core/net/tcp.c: Likewise.
4960
	* grub-core/net/udp.c: Likewise.
4961
4962
2013-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
4963
4964
	* grub-core/lib/posix_wrap/wchar.h: Fix typo.
4965
4966
2013-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
4967
4968
	* util/import_gcry.py: Add final newline in visibility.h.
4969
4970
2013-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
4971
4972
	* conf/Makefile.common: Fix typo.
4973
4974
2013-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
4975
4976
	* Makefile.util.def (grub-mkfont): Add missing libgnu.a.
4977
4978
2013-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
4979
4980
	* Makefile.am (widthspec.h): Fix typo.
4981
	* util/grub-gen-widthspec.c: Likewise.
4982
4983
2013-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
4984
4985
	Move ascii.h and widthspec.h generation to a separate build-time-only
4986
	tool.
4987
4988
2013-08-16  Grégoire Sutre  <gregoire.sutre@gmail.com>
4989
4990
	* grub-core/loader/i386/bsd.c (grub_netbsd_add_boot_disk_and_wedge):
4991
	Always fill bootdisk info and improve check for NetBSD disklabel.
4992
4993
2013-08-16  Vladimir Serbinenko  <phcoder@gmail.com>
4994
4995
	* conf/Makefile.extra-dist: Add util/bin2h.c.
4996
	Reported by: floppym.
4997
4998
2013-08-16  Vladimir Serbinenko  <phcoder@gmail.com>
4999
5000
	* configure.ac: Make unifont mandatory for powerpc-ieee1275.
5001
5002
2013-08-16  Vladimir Serbinenko  <phcoder@gmail.com>
5003
5004
	* configure.ac: Disable unifont and starfield if no freetype was found.
5005
5006
2013-08-16  Vladimir Serbinenko  <phcoder@gmail.com>
5007
5008
	* grub-core/lib/posix_wrap/wchar.h: Fix wchar_t and mbstate_t conflict
5009
	on NetBSD and OpenBSD.
5010
5011
2013-08-15  Vladimir Testov  <vladimir.testov@rosalab.ru>
5012
5013
	* grub-core/gfxmenu/gui_list.c: Baseline misplacement fixed.
5014
5015
2013-08-15  Vladimir Testov  <vladimir.testov@rosalab.ru>
5016
5017
	* grub-core/gfxmenu/gui_list.c: The number of color mappings is
5018
	reduced. Inheritant options are processed during the theme loading.
5019
5020
2013-08-15  Vladimir Testov  <vladimir.testov@rosalab.ru>
5021
5022
	* grub-core/gfxmenu/gui_list.c: Minimal width fixed.
5023
5024
2013-08-14 Avik Sil <aviksil@in.ibm.com>
5025
5026
	* grub-core/net/tftp.c: Send tftp ack packet before closing the socket.
5027
5028
2013-08-14 Avik Sil <aviksil@in.ibm.com>
5029
5030
	* grub-core/net/drivers/ieee1275/ofnet.c: Get proper mac address when
5031
	using qemu.
5032
5033
2013-08-14  Paulo Flabiano Smorigo  <pfsmorigo@br.ibm.com>
5034
5035
	* .bzrignore: Add bootinfo.txt, grub.chrp, gnulib/float.h, and
5036
	remove-potcdate.sed.
5037
5038
2013-08-14  Andrey Borzenkov <arvidjaar@gmail.com>
5039
5040
	*  grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_iterate): Remove
5041
	unused attribute from pull argument.
5042
5043
2013-08-14  Andrey Borzenkov <arvidjaar@gmail.com>
5044
5045
	*  util/getroot.c (grub_util_is_imsm): Fix descriptor and
5046
	memory leak.
5047
5048
2013-08-14  Andrey Borzenkov <arvidjaar@gmail.com>
5049
5050
	*  util/getroot.c (pull_lvm_by_command): add --separator option
5051
	to vgs call to disable padding of output to 10 characters.
5052
5053
2013-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
5054
5055
	* grub-core/kern/emu/misc.c (grub_device_mapper_supported): Move from
5056
	here ...
5057
	* grub-core/kern/emu/hostdisk.c (grub_device_mapper_supported): ... to
5058
	here.
5059
5060
2013-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
5061
5062
	* include/grub/i386/pc/biosdisk.h (grub_biosdisk_drp): Fix device_path
5063
	length.
5064
5065
2013-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
5066
5067
	Fix handling of build-time grub-bin2h and grub-mkfont when doing
5068
	full Canadian cross. Tested with build=x86_64, host=arm,
5069
	target=ppc-ieee1275.
5070
5071
2013-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
5072
5073
	* configure.ac: Error if no $BUILD_CC could be found.
5074
	Reported by: DevHC.
5075
5076
2013-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
5077
5078
	* grub-core/kern/i386/coreboot/init.c: Fix compilation on
5079
	i386-multiboot.
5080
5081
2013-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
5082
5083
	* grub-core/kern/vga_init.c: Fix compilation on qemu-mips.
5084
	* grub-core/kern/mips/qemu_mips/init.c: Likewise.
5085
5086
2013-08-13  Colin Watson  <cjwatson@ubuntu.com>
5087
5088
	* util/getroot.c (grub_util_biosdisk_get_grub_dev): Zero out
5089
	grub_errno in the case where we handle GRUB_ERR_UNKNOWN_DEVICE by
5090
	falling back to the partition device, otherwise a later call to this
5091
	function may fail spuriously.
5092
	Reported by Axel Beckert.  Fixes Debian bug #708614.
5093
5094
2013-08-12  Grégoire Sutre  <gregoire.sutre@gmail.com>
5095
5096
	* autogen.sh: Replace find -not by the POSIX-compliant find !.
5097
5098
2013-08-12  Grégoire Sutre  <gregoire.sutre@gmail.com>
5099
5100
	Prevent shadowing of stdlib's devname(3) on BSD.
5101
5102
	* grub-core/disk/cryptodisk.c (grub_cmd_cryptomount): Rename devname
5103
	and devlast to diskname and disklast, respectively.
5104
5105
2013-08-11  Colin Watson  <cjwatson@ubuntu.com>
5106
5107
	* util/grub-mkconfig.in: Fix detection of Emacs autosave files.
5108
5109
2013-08-08  Vladimir Testov  <vladimir.testov@rosalab.ru>
5110
5111
	* docs/grub.texi: Introduce terminal window position options:
5112
	terminal-left: terminal window's left position
5113
	terminal-top: terminal window's top position
5114
	terminal-width: terminal window's width
5115
	terminal-height: terminal window's height
5116
	terminal-border: terminal window's border width
5117
	* grub-core/gfxmenu/theme-loader.c: Likewise.
5118
	* include/grub/gfxmenu_view.h: Likewise.
5119
	* po/exlude.pot: Likewise.
5120
	* grub-core/gfxmenu/view.c: Likewise.
5121
	Also updated minimal window size.
5122
	Also terminal_sanity_check function has been introduced.
5123
	* grub-core/tests/checksums.h: Update (terminal window height
5124
	is adjusted now for low resolution screen)
5125
5126
2013-08-02  Vladimir Serbinenko  <phcoder@gmail.com>
5127
5128
	* grub-core/tests/checksums.h: Update (1-pixel difference in marker
5129
	position).
5130
5131
2013-08-02  Vladimir Serbinenko  <phcoder@gmail.com>
5132
5133
	* po/exclude.pot: Add few recent exceptions.
5134
5135
2013-08-02  Vladimir Serbinenko  <phcoder@gmail.com>
5136
5137
	* tests/grub_func_test.in: Add unicode.pf2.
5138
5139
2013-08-02  Vladimir Serbinenko  <phcoder@gmail.com>
5140
5141
	* grub-core/term/gfxterm.c (grub_virtual_screen_setup): Start with
5142
	standard rather than noral color, in line with other terminals.
5143
5144
2013-08-02  Vladimir Serbinenko  <phcoder@gmail.com>
5145
5146
	* grub-core/partmap/dfly.c: Simplify dprintfs for easier gettext
5147
	analysis.
5148
5149
2013-08-02  Vladimir Serbinenko  <phcoder@gmail.com>
5150
5151
	* grub-core/loader/arm/linux.c: Change printf to dprintf.
5152
5153
2013-08-02  Vladimir Serbinenko  <phcoder@gmail.com>
5154
5155
	* grub-core/fs/zfs/zfs.c (check_feature): Cleanup and remove
5156
	inappropriate printf.
5157
5158
2013-07-25  Andrey Borzenkov <arvidjaar@gmail.com>
5159
5160
	* .bzrignore: Remove grub-core/lib/dtc-grub,
5161
	grub-core/Makefile.libfdt.def
5162
	* conf/Makefile.extra-dist: Remove grub-core/Makefile.libfdt.def.
5163
5164
2013-07-25  Vladimir Serbinenko  <phcoder@gmail.com>
5165
5166
	* include/grub/video.h (grub_video_register): Keep double-linked as
5167
	well as single-linked invariants.
5168
	Reported by: qwertial.
5169
5170
2013-07-25  Vladimir Serbinenko  <phcoder@gmail.com>
5171
5172
	* grub-core/commands/nativedisk.c (get_uuid): Handle
5173
	GRUB_DISK_DEVICE_UBOOTDISK_ID.
5174
5175
2013-07-25  Vladimir Testov <vladimir.testov@rosalab.ru>
5176
5177
	* grub-core/gfxmenu/widget-box.c: Fixed draw function. Now it takes
5178
	maximum of NW, N, NE heights instead of N's height and maximum of
5179
	NW, W, SW widths instead of W's width. (So the box will be always
5180
	correctly drawn)
5181
5182
2013-07-20  Grégoire Sutre  <gregoire.sutre@gmail.com>
5183
5184
	* grub-core/partmap/bsdlabel.c (netopenbsdlabel_partition_map_iterate):
5185
	Fix misuse of variable count.
5186
5187
2013-07-18  Leif Lindholm  <leif.lindholm@arm.com>
5188
2013-07-18  Francesco Lavra  <francescolavra.fl@gmail.com>
5189
2013-07-18  Vladimir Serbinenko  <phcoder@gmail.com>
5190
5191
	New ports to arm-uboot and arm-efi.
5192
	Mostly by Leif Lindholm with some additions from
5193
	Francesco Lavra and cleanup by Vladimir Serbinenko.
5194
5195
2013-07-16  Vladimir Serbinenko  <phcoder@gmail.com>
5196
5197
	* grub-core/loader/multiboot_elfxx.c: Check eip after v2p translation
5198
	and not before.
5199
	Reported by: Leon Drugi.
5200
5201
2013-07-16  Vladimir Serbinenko  <phcoder@gmail.com>
5202
5203
	* grub-core/kern/powerpc/ieee1275/startup.S: Handle unaligned bss.
5204
	Reported by: Paulo Flabiano Smorigo.
5205
5206
2013-07-14  Vladimir Testov <vladimir.testov@rosalab.ru>
5207
5208
	* grub-core/gfxmenu/gui_list.c: USe viewport when drawing strings.
5209
5210
2013-07-14  Vladimir Testov <vladimir.testov@rosalab.ru>
5211
5212
	* grub-core/gfxmenu/gui_list.c: Fix height calculation.
5213
5214
2013-07-14  Vladimir Serbinenko  <phcoder@gmail.com>
5215
5216
	* grub-core/fs/zfs/zfs.c: Stylistic fixes.
5217
5218
2013-07-14  Vladimir Serbinenko  <phcoder@gmail.com>
5219
5220
	* grub-core/fs/zfs/zfs.c: Run emacs indent on file.
5221
5222
2013-07-14  Andrey Borzenkov <arvidjaar@gmail.com>
5223
5224
	* grub-core/net/bootp.c: Export net_* variables.
5225
	* grub-core/net/net.c: Likewise.
5226
5227
2013-07-14  Vladimir Serbinenko  <phcoder@gmail.com>
5228
5229
	* grub-core/fs/zfs/zfs.c: Remove brackets around return value.
5230
5231
2013-07-14  Vladimir Serbinenko  <phcoder@gmail.com>
5232
5233
	* grub-core/fs/zfs/zfs_lz4.c: Add missing packed attribute.
5234
5235
2013-07-14  Vladimir Serbinenko  <phcoder@gmail.com>
5236
5237
	* grub-core/fs/zfs/zfs.c (nvlist_next_nvpair): Fix improper cast.
5238
5239
2013-07-14  Vladimir Serbinenko  <phcoder@gmail.com>
5240
5241
	* grub-core/fs/zfs/zfs_lz4.c: Remove restrict keyword.
5242
5243
2013-07-14  Massimo Maggi <me@massimo-maggi.eu>
5244
5245
	* grub-core/fs/zfs/zfs.c (nvlist_next_nvpair): Error is encode_size
5246
	<= 0.
5247
5248
2013-07-14  Massimo Maggi <me@massimo-maggi.eu>
5249
5250
	* grub-core/fs/zfs/zfs.c: Split nvpair iterators into separate
5251
	functions.
5252
5253
2013-07-14  Massimo Maggi <me@massimo-maggi.eu>
5254
5255
	* grub-core/fs/zfs/zfs_lz4.c: New file.
5256
	* grub-core/fs/zfs/zfs.c: Tie up lz4 decompression.
5257
5258
2013-07-14  Massimo Maggi <me@massimo-maggi.eu>
5259
5260
	* grub-core/fs/zfs/zfs.c: Check for feature compatibility.
5261
5262
2013-07-14  Massimo Maggi <me@massimo-maggi.eu>
5263
5264
	* grub-core/fs/zfs/zfs.c (uberblock_verify): Accept version 5000.
5265
	(check_pool_label): Likewise.
5266
	* include/grub/zfs/zfs.h: Rewrite SPA_VERSION_* macros.
5267
5268
2013-07-14  Massimo Maggi <me@massimo-maggi.eu>
5269
5270
	* grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Fix RAIDZ reporting.
5271
5272
2013-07-13  Andrey Borzenkov <arvidjaar@gmail.com>
5273
5274
	* docs/grub.texi (Commands): Document postition parameters
5275
	for menuentry command.
5276
5277
2013-07-13  Andrey Borzenkov <arvidjaar@gmail.com>
5278
5279
	* util/grub-mknetdir.in: Remove stray line from help output.
5280
5281
2013-07-11  Vladimir Serbinenko  <phcoder@gmail.com>
5282
5283
	Remove early sm712 init as there is no reason for it (the "watchdog"
5284
	effect was due to wrong GPIO map).
5285
5286
2013-07-11  Vladimir Serbinenko  <phcoder@gmail.com>
5287
5288
	* grub-core/commands/pcidump.c: Remove static variables.
5289
5290
2013-07-11  Vladimir Serbinenko  <phcoder@gmail.com>
5291
5292
	* grub-core/commands/sleep.c: Refresh screen before sleeping.
5293
5294
2013-07-11  Vladimir Serbinenko  <phcoder@gmail.com>
5295
5296
	* configure.ac: Move delimiter after the infos.
5297
5298
2013-07-11  Vladimir Serbinenko  <phcoder@gmail.com>
5299
5300
	* grub-core/bus/usb/usbhub.c: Fix recheck logic.
5301
5302
2013-07-11  Vladimir Serbinenko  <phcoder@gmail.com>
5303
5304
	* util/grub-mkfont.c (write_font_ascii_bitmap): Fix handling of glyphs
5305
	not filling whole 8x16 space.
5306
5307
2013-07-11  Vladimir Serbinenko  <phcoder@gmail.com>
5308
5309
	* grub-core/normal/charset.c (bidi_line_wrap): Fix spurios warning.
5310
5311
2013-07-11  Vladimir Serbinenko  <phcoder@gmail.com>
5312
5313
	* configure.ac: Indicate which liblzma is used if any.
5314
5315
2013-06-21  Paul Wise  <pabs3@bonedaddy.net>
5316
2013-06-21  Craig Sanders <savannah@taz.net.au>
5317
5318
	* util/grub-reboot.in: Document submenu usage.
5319
5320
2013-06-25  Colin Watson  <cjwatson@ubuntu.com>
5321
5322
	* .bzrignore: Update with a number of new test-related files.
5323
5324
2013-06-25  Colin Watson  <cjwatson@ubuntu.com>
5325
5326
	* util/grub-script-check.c: Fail on scripts containing no
5327
	commands, to guard against corrupted grub-mkconfig setups that
5328
	produce no useful output.
5329
	* tests/grub_script_no_commands.in: New test.
5330
	* Makefile.util.def (grub_script_no_commands): Add.
5331
	Reported by Hans Putter.  Fixes Debian bug #713886.
5332
5333
2013-06-16  Andrey Borzenkov <arvidjaar@gmail.com>
5334
5335
	* grub-core/disk/diskfilter.c: Forgot to remove comment
5336
	from previous commit.
5337
5338
2013-06-16  Andrey Borzenkov <arvidjaar@gmail.com>
5339
5340
	* grub-core/term/gfxterm.c (grub_virtual_screen_setup): Use
5341
	grub_term_normal_color, do not hardcode GRUB_TERM_DEFAULT_NORMAL_COLOR.
5342
5343
2013-06-16  Andrey Borzenkov <arvidjaar@gmail.com>
5344
5345
	* conf/Makefile.extra-dist: Add grub-core/fs/cpio_common.c.
5346
5347
2013-06-16  Andrey Borzenkov <arvidjaar@gmail.com>
5348
5349
	* grub-core/disk/diskfilter.c (scan_devices): Iteratively
5350
	rescan diskfilter devices until nothing new is found.
5351
5352
2013-06-16  Vladimir Serbinenko  <phcoder@gmail.com>
5353
5354
	Fix casts when compiling coreboot-specific code for 64-bit EFI.
5355
5356
2013-06-16  Vladimir Serbinenko  <phcoder@gmail.com>
5357
5358
	Don't try to detect cbfs on *-emu.
5359
5360
2013-06-16  Vladimir Serbinenko  <phcoder@gmail.com>
5361
5362
	* grub-core/term/gfxterm.c: USe right background color when scrolling.
5363
5364
2013-06-16  Vladimir Serbinenko  <phcoder@gmail.com>
5365
5366
	Add support for processed coreboot payload chainloading.
5367
5368
2013-06-16  Vladimir Serbinenko  <phcoder@gmail.com>
5369
5370
	Enable coreboot information commands even when not loaded as
5371
	coreboot payload (e.g. when loaded from SeaBIOS-as-payload).
5372
5373
2013-06-15  Vladimir Serbinenko  <phcoder@gmail.com>
5374
5375
	Support for cbfs. Also factor out the part which is common
5376
	for all archives to a separate module. This splits tar from cpio
5377
	as they are very different but keeps cpio, cpio_be, odc and newc
5378
	together since they're very similar.
5379
5380
2013-06-15  David Michael  <fedora.dm0@gmail.com>
5381
5382
	* configure.ac (FREETYPE): Change AC_CHECK_PROGS to AC_CHECK_TOOLS.
5383
	(freetype_cflags,freetype_libs): Change freetype-config to $FREETYPE.
5384
5385
2013-06-15  Vladimir Serbinenko  <phcoder@gmail.com>
5386
5387
	* tests/grub_script_eval.in: Really add the eval test.
5388
5389
2013-06-14  Vladimir Serbinenko  <phcoder@gmail.com>
5390
5391
	Move flavour-specific parts out of common cpio.c file and
5392
	rename remaining to cpio_common.c
5393
5394
2013-06-07  Andrey Borzenkov <arvidjaar@gmail.com>
5395
5396
	* grub-core/script/execute.c (grub_script_execute_sourcecode): Split
5397
	off new function grub_script_execute_new_scope. Change callers to use
5398
	either of them as appropriate.
5399
	* grub-core/commands/eval.c: New command eval.
5400
	* docs/grub.texi (Commands): Document it.
5401
5402
2013-06-07  Andrey Borzenkov <arvidjaar@gmail.com>
5403
5404
	* grub-core/kern/corecmd.c (grub_core_cmd_set): Use grub_env_get
5405
	to fetch values when listing.
5406
5407
2013-06-07  Andrey Borzenkov <arvidjaar@gmail.com>
5408
5409
	Fix make dist on non-pc.
5410
5411
2013-06-07  Francesco Lavra  <francescolavra.fl@gmail.com>
5412
5413
	* grub-core/kern/corecmd.c (grub_core_cmd_ls): Fix handling of paths
5414
	without a device name.
5415
5416
2013-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
5417
5418
	Remove enable_executable_check as it's not needed anymore.
5419
	Reported by: dougray.
5420
5421
2013-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
5422
5423
	* grub-core/disk/diskfilter.c (insert_array): Fix order to discover
5424
	ambigouos RAID before discovering RAIDs on top of it.
5425
	Reported by: bodom.
5426
5427
2013-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
5428
5429
	Fix typo (failback vs fallback).
5430
5431
2013-05-31  Andrey Borzenkov <arvidjaar@gmail.com>
5432
5433
	* util/grub.d/30_os-prober.in: Add support for probing EFI
5434
	System Partition (as of os-prober 1.58).
5435
5436
2013-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
5437
5438
	* configure.ac: Add yet another path to unifont. For parabola.
5439
5440
2013-05-30  Josh Triplett  <josh@joshtriplett.org>
5441
5442
	* grub-core/normal/cmdline.c (grub_cmdline_get): Fix Ctrl-u
5443
	handling to copy the killed characters to the kill buffer as
5444
	UCS4 stored as grub_uint32_t rather than as 8-bit characters
5445
	stored as char.  Eliminates UCS4 truncation and corruption
5446
	observed when killing characters with Ctrl-u and yanking them
5447
	back with Ctrl-y.
5448
5449
2013-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
5450
5451
	Detach optional parts of gfxterm and integrate in with coreboot init.
5452
5453
2013-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
5454
5455
	Move blit and fill dispatcher to appropriate files to decrease export
5456
	and relocation overhead.
5457
5458
2013-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
5459
5460
	* grub-core/font/font.c, include/grub/font.h: Inline simple font
5461
	functions.
5462
5463
2013-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
5464
5465
	* grub-core/Makefile.am: Fix compilation problem with some
5466
	automake versions.
5467
5468
2013-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
5469
5470
	* configure.ac: Add Ubuntu path to unifont and report unifont path used.
5471
5472
2013-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
5473
5474
	* Makefile.am, conf/Makefile.common: Fix compilation problem with some
5475
	automake versions.
5476
5477
2013-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
5478
5479
	* grub-core/commands/acpihalt.c: Fix handling of DSDT in presence of
5480
	SSDT.
5481
5482
2013-05-15  Radosław Szymczyszyn  <lavrin@gmail.com>
5483
5484
	* grub-core/partmap/dfly.c: New partition map.
5485
5486
2013-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
5487
5488
	* grub-core/kern/corecmd.c (grub_core_cmd_ls): Fix empty path
5489
	checking.
5490
	Reported by: Francesco Lavra.
5491
5492
2013-05-14  Andrey Borzenkov <arvidjaar@gmail.com>
5493
5494
	* gentpl.py: Replace EXTRA_DIST with dist_noinst_DATA or
5495
	dist_<directory>_DATA. EXTRA_DIST is ignored by automake inside
5496
	false conditions.
5497
	* conf/Makefile.common: define dist_grubconf_DATA
5498
5499
2013-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
5500
5501
	Progressively skip menu elements on small terminals rather
5502
	than crashing.
5503
5504
2013-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
5505
5506
	* grub-core/normal/cmdline.c (grub_cmdline_get): Fix off-by-one error
5507
	to avoid losing last column.
5508
5509
2013-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
5510
5511
	* po/exclude.pot: Add missing string "%C".
5512
5513
2013-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
5514
5515
	* tests/util/grub-shell.in: Remove the temporary directory on grub-emu
5516
	after the test.
5517
5518
2013-05-11  Vladimir Serbinenko  <phcoder@gmail.com>
5519
5520
	* util/grub-install.in: Gettextize "Not found" message.
5521
5522
2013-05-11  Vladimir Serbinenko  <phcoder@gmail.com>
5523
5524
	Fix distfiles list.
5525
	Reported by: Andrey Borzenkov <arvidjaar@gmail.com>
5526
5527
2013-05-11  Paulo Flabiano Smorigo  <pfsmorigo@br.ibm.com>
5528
5529
	* grub-core/net/bootp.c (grub_cmd_bootp): Check if there is any card
5530
	present.
5531
	* include/grub/err.h (grub_err_t): New enum value GRUB_ERR_NET_NO_CARD.
5532
5533
2013-05-11  Vladimir Serbinenko  <phcoder@gmail.com>
5534
5535
	* grub-core/tests/setjmp_test.c: Ignore missing noreturn.
5536
5537
2013-05-11  Vladimir Serbinenko  <phcoder@gmail.com>
5538
5539
	* grub-core/fs/hfspluscomp.c (grub_hfsplus_compress_attr): Add packed
5540
	attribute since structure is not necessarily aligned.
5541
5542
2013-05-11  Andrey Borzenkov <arvidjaar@gmail.com>
5543
5544
	* docs/grub.texi (Device syntax): Clarify description of network
5545
	drives.
5546
5547
2013-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
5548
5549
	Redirect xasprintf to grub_xvasprintf rather than having #ifdef's
5550
	for vasprintf presence.
5551
5552
2013-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
5553
5554
	* util/grub-install.in: Handle efibootmgr presence check.
5555
	Reported by: Leif Lindholm.
5556
5557
2013-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
5558
5559
	* grub-core/commands/testspeed.c: Reuse formatting string to decrease
5560
	new strings to translate.
5561
5562
2013-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
5563
5564
	* util/grub-mkrescue.in: Replace `STR' with `STRING' to avoid adding
5565
	yet another string (pun intended) to translate.
5566
5567
2013-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
5568
5569
	* po/POTFILES-shell.in: Autogenerate it.
5570
5571
2013-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
5572
5573
	* grub-core/net/net.c (grub_net_open_real): Autoload network modules.
5574
5575
2013-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
5576
5577
	* grub-core/term/terminfo.c: Rename ANSI_C0 to ANSI_CSI to avoid
5578
	misnomer.
5579
5580
2013-05-08  Andrey Borzenkov <arvidjaar@gmail.com>
5581
5582
	* docs/grub.texi (Network): Add description of net_default_interface,
5583
	net_default_ip and net_default_mac. Rewrite variables description
5584
	to emphasize that they are per-interface.
5585
5586
2013-05-08  Vladimir Serbinenko  <phcoder@gmail.com>
5587
5588
	New test: cmdline and cat.
5589
5590
2013-05-08  Vladimir Serbinenko  <phcoder@gmail.com>
5591
5592
	* grub-core/commands/cat.c: Show UTF-8 characters.
5593
5594
2013-05-08  Vladimir Serbinenko  <phcoder@gmail.com>
5595
5596
	* conf/Makefile.common: Poison float and double on non-emu.
5597
5598
2013-05-08  Vladimir Serbinenko  <phcoder@gmail.com>
5599
5600
	* configure.ac: Don't disable extended registers on emu.
5601
5602
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5603
5604
	* configure.ac: Don't use extended registers on x86_64.
5605
	Reported by: Peter Jones.
5606
5607
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5608
5609
	* grub-core/term/efi/console.c: Fix compile error.
5610
5611
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5612
5613
	Compressed HFS+ support.
5614
5615
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5616
5617
	* grub-core/commands/videoinfo.c: Use "paletted" rather than "packed
5618
	pixel".
5619
5620
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5621
5622
	Menu color test.
5623
5624
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5625
5626
	* grub-core/tests/setjmp_test.c: New test.
5627
5628
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5629
5630
	New variables 'net_default_*' to determine MAC/IP of default interface.
5631
5632
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5633
5634
	* tests/gettext_strings_test.in: A test to check for strings not
5635
	marked for translation.
5636
5637
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5638
5639
	* autogen.sh: Exclude unused libgcrypt files from translation.
5640
5641
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5642
5643
	Simplify few strings.
5644
5645
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5646
5647
	Mark few forgotten strings for translation.
5648
5649
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5650
5651
	* grub-core/loader/linux.c: Use grub_dprintf for debug statements
5652
	rather than printf.
5653
5654
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5655
5656
	* grub-core/video/readers/jpeg.c: Use grub_dprintf for debug statements
5657
	rather than printf.
5658
	* grub-core/video/readers/tga.c: Likewise.
5659
5660
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5661
5662
	* tests/priority_queue_unit_test.cc: New test.
5663
5664
2013-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
5665
5666
	* grub-core/font/font.c: Use grub_dprintf for debug statements rather
5667
	than printf.
5668
5669
2013-05-06  Andrey Borzenkov <arvidjaar@gmail.com>
5670
5671
	Reimplement grub-reboot to not depend on saved_entry. Use next_entry
5672
	variable for one time boot menu entry.
5673
5674
2013-05-05  Bean  <bean123ch@gmail.com>
5675
5676
	* grub-core/commands/testspeed.c: New command testspeed.
5677
5678
2013-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
5679
5680
	Factor-out human-size printing.
5681
5682
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5683
5684
	Agglomerate more mallocs to speed-up gfxterm.
5685
5686
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5687
5688
	Speed-up gfxterm by slightly agglomerating mallocs.
5689
5690
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5691
5692
	More video checks.
5693
5694
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5695
5696
	Speed-up gfxterm by saving intermediate results in index+alpha
5697
	format.
5698
5699
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5700
5701
	* grub-core/tests/lib/functional_test.c: Don't stop on first failed
5702
	test.
5703
5704
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5705
5706
	* grub-core/normal/menu_text.c (menu_clear_timeout): Clear second
5707
	line of timeout as it may contain the rest of long line.
5708
5709
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5710
5711
	* grub-core/normal/main.c: Fix freed memory dereference.
5712
5713
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5714
5715
	Fix several memory leaks.
5716
5717
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5718
5719
	* grub-core/normal/menu.c (run_menu): Fix timeout reference point.
5720
5721
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5722
5723
	* grub-core/gettext/gettext.c: Try $lang.gmo as well.
5724
5725
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5726
5727
	Fix test -a and -o precedence.
5728
	Reported by: adrian15.
5729
5730
2013-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
5731
5732
	* grub-core/font/font.c (grub_font_construct_glyph): Fix memory leak.
5733
5734
2013-05-03  Andrey Borzenkov <arvidjaar@gmail.com>
5735
5736
	Rename grub-core/tests/checksums.c into grub-core/tests/checksums.h
5737
	and add it as source to functional_test module.
5738
5739
2013-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
5740
5741
	* grub-core/tests/video_checksum.c: Don't set GENERATE_MODE.
5742
5743
2013-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
5744
5745
	New series of tests for gfxterm and gfxmenu.
5746
5747
2013-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
5748
5749
	* grub-core/gfxmenu/gfxmenu.c (grub_gfxmenu_try): Allow specifying
5750
	the theme path relative to $prefix/themes.
5751
5752
2013-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
5753
5754
	* grub-core/video/fb/fbblit.c (grub_video_fbblit_blend_BGR888_RGBA8888):
5755
	Fix order bug.
5756
	(grub_video_fbblit_blend_RGB888_RGBA8888): Likewise.
5757
5758
2013-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
5759
5760
	* include/grub/gui.h (grub_gfxmenu_timeout_unregister): Free cb
5761
	descriptor.
5762
5763
2013-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
5764
5765
	* grub-core/gfxmenu/view.c (grub_gfxmenu_view_new): Clear
5766
	grub_gfxmenu_timeout_notifications.
5767
	(grub_gfxmenu_view_destroy): Likewise.
5768
5769
2013-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
5770
5771
	* grub-core/normal/term.c (print_ucs4_real): Fix startwidth in dry run.
5772
5773
2013-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
5774
5775
	Several fixes to ieee1275 and big-endian video.
5776
5777
2013-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
5778
5779
	Add missing exports on mips.
5780
5781
2013-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
5782
5783
	* grub-core/tests/videotest_checksum.c (videotest_checksum): Error out
5784
	if no unifont is found.
5785
	Restore original keyboard.
5786
5787
2013-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
5788
5789
	* grub-core/loader/i386/linux.c (grub_linux_setup_video): Add
5790
	GRUB_VIDEO_ADAPTER_CAPTURE: to handled drived ids.
5791
5792
2013-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
5793
5794
	First automated video test (running videotest and comparing results)
5795
5796
2013-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
5797
5798
	* grub-core/commands/videotest.c: Reduce flickering and draw 6 squares
5799
	instead of 2 to have full RGB/CMY test pattern.
5800
5801
2013-04-30  Vladimir Serbinenko  <phcoder@gmail.com>
5802
5803
	Add few more tests.
5804
5805
2013-04-30  Vladimir Serbinenko  <phcoder@gmail.com>
5806
5807
	* include/grub/arc/arc.h: Account for missing "other" peripheral on
5808
	ARCS. All users updated.
5809
5810
2013-04-30  Vladimir Serbinenko  <phcoder@gmail.com>
5811
5812
	* grub-core/kern/mips/loongson/init.c: Support halt for loongson 2E.
5813
5814
2013-04-30  Vladimir Serbinenko  <phcoder@gmail.com>
5815
5816
	* grub-core/partmap/amiga.c: Fix size of checksummed block.
5817
5818
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5819
5820
	* configure.ac: Use -mcmodel=large on x86_64-emu as well.
5821
	Reported by: qwertial.
5822
5823
2013-04-29  Vladimir Testov <vladimir.testov@rosalab.ru>
5824
5825
	* grub-core/gfxmenu/circular_progress.c: Set start_angle in degrees
5826
	with syntax "XXX deg"/"XXX °".
5827
5828
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5829
5830
	Make PCI init in i386-qemu port more robust.
5831
5832
2013-04-29  Vladimir Testov <vladimir.testov@rosalab.ru>
5833
5834
	* grub-core/gfxmenu/gui_list.c: Refresh first_shown_entry value when
5835
	cached view is reused.
5836
	* grub-core/gfxmenu/view.c: Call the refresh procedure for all
5837
	open boot menus.
5838
5839
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5840
5841
	Unify more code in grub-install_header.
5842
5843
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5844
5845
	Add few new tests.
5846
5847
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5848
5849
	Enforce disabling of firmware disk drivers when native drivers kick in.
5850
5851
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5852
5853
	* grub-core/commands/nativedisk.c: Customize the list of modules on
5854
	platform. Don't try to search for disks already using native drivers.
5855
5856
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5857
5858
	* grub-core/bus/usb/uhci.c: Fix DMA handling and enable on all PCI
5859
	platforms.
5860
5861
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5862
5863
	* grub-core/script/execute.c (grub_script_arglist_to_argv): Fix
5864
	handling of variables containing backslash.
5865
5866
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5867
5868
	* include/grub/list.h (FOR_LIST_ELEMENTS_SAFE):Fix a NULL pointer
5869
	dereference.
5870
	Reported by: qwertial.
5871
5872
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5873
5874
	* grub-core/kern/mips/arc/init.c: Fix prefix detection.
5875
5876
2013-04-29  Vladimir Serbinenko  <phcoder@gmail.com>
5877
5878
	* grub-core/lib/arg.c (grub_arg_show_help): Fix a NULL pointer
5879
	dereference.
5880
	Reported by: qwertial.
5881
5882
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5883
5884
	* docs/grub.texi: Add a comment about usefullness of nativedisk.
5885
5886
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5887
5888
	* grub-core/commands/nativedisk.c: Ignore unknown filesystem error.
5889
5890
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5891
5892
	New command `nativedisk'.
5893
5894
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5895
5896
	* grub-core/io/lzopio.c: Use GRUB_PROPERLY_ALIGNED_ARRAY.
5897
	* grub-core/loader/i386/bsd.c: Likewise.
5898
5899
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5900
5901
	* grub-core/disk/ahci.c: Fix compilation for amd64 (format warnings).
5902
5903
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5904
5905
	* include/grub/efi/api.h (GRUB_EFI_DEVICE_PATH_LENGTH): Use
5906
	grub_get_unaligned16 rather than shifts.
5907
5908
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5909
5910
	* grub-core/kern/file.c: Use const char * rather than casting to
5911
	non-const.
5912
5913
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5914
5915
	* grub-core/commands/probe.c: Add missing grub_device_close.
5916
5917
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5918
5919
	* INSTALL: Document linguas.sh.
5920
5921
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5922
5923
	Remove POTFILES.in and regenerate it in autogen.sh.
5924
5925
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5926
5927
	Move --directory/--override-directorry to grub-install_header and unify.
5928
5929
2013-04-28  Vladimir Serbinenko  <phcoder@gmail.com>
5930
5931
	* grub-core/term/morse.c: Macroify dih and dah.
5932
5933
2013-04-27  Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
5934
5935
	* include/grub/macho.h: Set GRUB_MACHO_FAT_EFI_MAGIC as unsigned.
5936
5937
2013-04-27  Vladimir Serbinenko  <phcoder@gmail.com>
5938
5939
	* grub-core/term/ns8250.c: Systematically probe ports by writing
5940
	to SR before using them.
5941
5942
2013-04-27  Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
5943
5944
	* util/ieee1275/ofpath.c (of_path_of_scsi): Fix path output for sas
5945
	disks.
5946
	(check_sas): Get sas_adress info.
5947
5948
2013-04-27  Vladimir Serbinenko  <phcoder@gmail.com>
5949
5950
	* grub-core/disk/ahci.c (grub_ahci_pciinit): Fix handling of empty
5951
	ports.
5952
5953
2013-04-27  Leon Drugi <eyak>
5954
5955
	* grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Fix cast in
5956
	BSS clearing.
5957
5958
2013-04-27  Vladimir Serbinenko  <phcoder@gmail.com>
5959
5960
	Core compression test.
5961
5962
2013-04-27  Vladimir Serbinenko  <phcoder@gmail.com>
5963
5964
	Implement grub_machine_get_bootlocation for ARC.
5965
5966
2013-04-27  Vladimir Serbinenko  <phcoder@gmail.com>
5967
5968
	Improve AHCI detection and command issuing.
5969
5970
2013-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
5971
5972
	Fix pseries test.
5973
5974
2013-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
5975
5976
	Make 'make check' work on emu.
5977
5978
2013-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
5979
5980
	Replace libcurses with our own vt100 handling for the ease of testing
5981
	and decreasing prerequisites.
5982
5983
2013-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
5984
5985
	* grub-core/Makefile.core.def: Fix grub-emu and grub-emu-lite sources.
5986
5987
2013-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
5988
5989
	* util/getroot.c (exec_pipe): Put proper #if's so that its users don't
5990
	compile when not needed.
5991
5992
2013-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
5993
5994
	* tests/pseries_test.in: New test.
5995
5996
2013-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
5997
5998
	Add test to check that different boot mediums work.
5999
6000
2013-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
6001
6002
	* util/grub-mkrescue.in: Rename i386-ieee1275 core image due to
6003
	ofw limited ISO support.
6004
6005
2013-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
6006
6007
	* configure.ac: Fix loongson conditional.
6008
6009
2013-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
6010
6011
	Enable mipsel-arc.
6012
6013
2013-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
6014
6015
	Add serial on ARC platform.
6016
6017
2013-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
6018
6019
	* grub-core/boot/powerpc/bootinfo.txt.in: Missing update from previous
6020
	commit.
6021
6022
2013-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
6023
6024
	* tests/partmap_test.in: Add missing double semicolon.
6025
6026
2013-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
6027
6028
	* util/grub-mkrescue.in: Fix loongson filename.
6029
6030
2013-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
6031
6032
	* util/grub-mkrescue.in: Move all files that don't have a location
6033
	set in stone under /boot/grub. Use ISO hard links rather than copies
6034
	to save some space.
6035
6036
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6037
6038
	* grub-core/term/ieee1275/console.c (grub_console_dimensions): Ignore
6039
	bogus SLOF values.
6040
6041
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6042
6043
	Make check work on mips-arc.
6044
6045
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6046
6047
	* util/grub-mkrescue.in: Alias sashARCS as sash.
6048
6049
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6050
6051
	* grub-core/term/arc/console.c: Assume that console is 80x24 vt100 if
6052
	it's serial.
6053
6054
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6055
6056
	* util/grub-install.in: Fix target fo qemu_mips.
6057
	Fix extension on EFI.
6058
6059
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6060
6061
	* grub-core/normal/menu_text.c (print_entry): Put an asterisk
6062
	in front of chosen entry to mark it even if highlighting is lost.
6063
6064
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6065
6066
	* grub-core/loader/i386/linux.c (grub_linux_boot): Default to
6067
	gfxpayload=keep if cbfb is active.
6068
6069
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6070
6071
	* grub-core/disk/ata.c (grub_ata_real_open): Use grub_error properly.
6072
6073
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6074
6075
	Add missing video ids to coreboot and ieee1275 video.
6076
6077
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6078
6079
	* util/grub-mkrescue.in: Add mips-arc support.
6080
6081
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6082
6083
	* grub-core/kern/dl.c (grub_dl_resolve_symbols): Handle malloc failure.
6084
6085
2013-04-24  Vladimir Serbinenko  <phcoder@gmail.com>
6086
6087
	Move mips-arc link address. Previous link address was chosen
6088
	in belief that RAM on SGI platforms grows down while in fact it
6089
	grows up from an unusual base.
6090
6091
2013-04-21  Vladimir Serbinenko  <phcoder@gmail.com>
6092
6093
	* grub-core/disk/arc/arcdisk.c (grub_arcdisk_iterate_iter):
6094
	Fix a type which prevented CD-ROM and floppy boot.
6095
6096
2013-04-21  Vladimir Serbinenko  <phcoder@gmail.com>
6097
6098
	Support coreboot framebuffer.
6099
6100
	* grub-core/video/i386/coreboot/cbfb.c: New file.
6101
6102
2013-04-20  Vladimir Serbinenko  <phcoder@gmail.com>
6103
6104
	* grub-core/kern/mm.c (grub_mm_init_region): Fix condition for
6105
	detecting too small regions.
6106
6107
2013-04-20  Vladimir Serbinenko  <phcoder@gmail.com>
6108
6109
	* grub-core/Makefile.core.def (legacycfg): Enable on EFI.
6110
6111
2013-04-20  Vladimir Serbinenko  <phcoder@gmail.com>
6112
6113
	* grub-core/lib/efi/relocator.c (grub_relocator_firmware_alloc_region):
6114
	Remove dprintf.
6115
	* grub-core/lib/relocator.c (malloc_in_range): Likewise.
6116
6117
2013-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
6118
6119
	* grub-core/kern/ieee1275/init.c (grub_claim_heap): Improve handling
6120
	of GRUB_IEEE1275_FLAG_FORCE_CLAIM.
6121
	* grub-core/loader/powerpc/ieee1275/linux.c
6122
	(grub_linux_claimmap_iterate): Handle GRUB_IEEE1275_FLAG_FORCE_CLAIM.
6123
6124
2013-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
6125
6126
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options):
6127
	Look for /boot-rom as well as /rom/boot-rom.
6128
6129
2013-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
6130
6131
	* grub-core/commands/videotest.c (grub_cmd_videotest): Fix error
6132
	handling when creating text_layer failed.
6133
	* grub-core/video/video.c (grub_video_create_render_target):
6134
	Set result to 0 on error.
6135
	(grub_video_delete_render_target): Do not dereference NULL.
6136
6137
2013-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
6138
6139
	* grub-core/kern/elfXX.c (grub_elfXX_load): Handle
6140
	GRUB_ELF_LOAD_FLAGS_30BITS and GRUB_ELF_LOAD_FLAGS_62BITS.
6141
	* grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_load32),
6142
	(grub_linux_load64): Mask out 2 high bits.
6143
6144
2013-04-19  Andrey Borzenkov <arvidjaar@gmail.com>
6145
6146
	* util/grub.d/30_os-prober.in: Add onstr to linux entries in one
6147
	more place.
6148
6149
2013-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
6150
6151
	Add support for pseries and other bootinfo machines to grub-mkrescue.
6152
6153
	Tested by: Paulo Flabiano Smorigo.
6154
6155
2013-04-17  Vladimir Serbinenko  <phcoder@gmail.com>
6156
6157
	* util/grub-mkrescue.in: Add GPT for EFI boot.
6158
6159
2013-04-17  Vladimir Serbinenko  <phcoder@gmail.com>
6160
6161
	* grub-core/disk/efi/efidisk.c: Detect floppies by ACPI ID.
6162
	It improves performance in qemu.
6163
6164
2013-04-17  Vladimir Serbinenko  <phcoder@gmail.com>
6165
6166
	* build-aux/snippet: Add missing gnulib files.
6167
6168
2013-04-16  Andrey Borzenkov <arvidjaar@gmail.com>
6169
6170
	* grub-core/disk/efi/efidisk.c: Really limit transfer chunk size.
6171
6172
2013-04-16  Andrey Borzenkov <arvidjaar@gmail.com>
6173
6174
	* autogen.sh: Use "-f" in addition for "-h" when checking file presence.
6175
6176
2013-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
6177
2013-04-15  Peter Jones <pjones@redhat.com>
6178
6179
	* grub-core/disk/efi/efidisk.c: Limit disk read or write chunk to 0x500
6180
	sectors.
6181
	Based on patch by Peter Jones.
6182
6183
2013-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
6184
6185
	Fix DMRAID partition handling.
6186
6187
2013-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
6188
6189
	* tests/grub_cmd_date.in: Skip on sparc64.
6190
6191
2013-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
6192
6193
	* tests/grub_script_expansion.in: Use fixed-string grep to skip over
6194
	firmware error messages.
6195
6196
2013-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
6197
6198
	* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_devalias_next): Make
6199
	source and destination differ.
6200
6201
2013-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
6202
6203
	* grub-core/disk/ieee1275/ofdisk.c: Fix CD-ROM and boot device
6204
	detection.
6205
6206
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6207
6208
	* grub-core/lib/posix_wrap/sys/types.h: Make WORDS_BIGENDIAN definition
6209
	match config-util.h to avoid warnings and increase compatibility.
6210
6211
2013-04-14  Szymon Janc <szymon@janc.net.pl>
6212
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6213
6214
	Add option to compress files on install/image creation.
6215
6216
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6217
6218
	* docs/grub-dev.texi: Rearrange menu to match the section order.
6219
	Reported by: Bryan Hundven.
6220
6221
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6222
6223
	* grub-core/loader/i386/linux.c: Remove useless leftover pointer.
6224
6225
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6226
6227
	Move GRUB out of system area when using xorriso 1.2.9 or later.
6228
6229
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6230
6231
	* tests/grub_cmd_date.in: Add missing exit 1.
6232
6233
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6234
6235
	* tests/partmap_test.in: Skip on sparc64.
6236
6237
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6238
6239
	Support grub-shell on sparc64.
6240
6241
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6242
6243
	Support mkrescue on sparc64.
6244
6245
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6246
6247
	Allow IEEE1275 ports on path even if it wasn't detected automatically.
6248
	Needed on OpenBIOS due to incomplete device tree.
6249
6250
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6251
6252
	* grub-core/disk/ieee1275/ofdisk.c: Iterate over bootpath even if it
6253
	would be otherwise excluded.
6254
6255
2013-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
6256
6257
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options):
6258
	Inline name defines used only once.
6259
6260
2013-04-13  Vladimir Serbinenko  <phcoder@gmail.com>
6261
6262
	Fix memory leaks in ofnet.
6263
	Reported by: Francesco Lavra.
6264
6265
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6266
6267
	* docs/man/grub-glue-efi.h2m: Add missing file.
6268
6269
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6270
6271
	* util/grub-mkrescue.in: Fix wrong architecture for ppc dir.
6272
6273
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6274
6275
	Better support Apple Intel Macs on CD.
6276
6277
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6278
6279
	Replace stpcpy with grub_stpcpy in tools.
6280
6281
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6282
6283
	Handle Japanese special keys.
6284
	Reported by: Hiroyuki YAMAMORI.
6285
	Codes supplied by: Hiroyuki YAMAMORI.
6286
6287
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6288
6289
	* util/grub-mkimage.c: Document memdisk implying --prefix.
6290
6291
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6292
6293
	* grub-core/bus/usb/ehci.c (grub_ehci_fini_hw): Ignore errors, not
6294
	much we can do about it anyway.
6295
6296
2013-04-12  Aleš Nesrsta  <starous@volny.cz>
6297
6298
	Fix handling of split transfers.
6299
6300
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6301
6302
	* grub-core/net/http.c: Fix bad free.
6303
6304
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6305
6306
	* grub-core/net/drivers/ieee1275/ofnet.c: Don't attempt to send more
6307
	than buffer size.
6308
6309
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6310
6311
	Disable partmap check on i386-ieee1275 due to openfirmware issues.
6312
6313
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6314
6315
	* tests/util/grub-shell.in: Fix it on powerpc.
6316
6317
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6318
6319
	Turn off QEMU ACPI-way since new releases don't have shutdown port
6320
	anymore.
6321
6322
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6323
6324
	* docs/grub.texi: Update coreboot status info.
6325
6326
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6327
6328
	* tests/grub_cmd_date.in: New test for datetime.
6329
6330
2013-04-12  Vladimir Serbinenko  <phcoder@gmail.com>
6331
6332
	* tests/partmap_test.in: Fix missing qemudisk setting.
6333
6334
2013-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
6335
6336
	Support i386-ieee1275 grub-mkrescue and make check on it.
6337
6338
2013-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
6339
6340
	Merge powerpc grub-mkrescue flavour with common. Use xorriso HFS+
6341
	feature for it.
6342
6343
2013-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
6344
6345
	* docs/grub.texi: Fix description of GRUB_CMDLINE_XEN and
6346
	GRUB_CMDLINE_XEN_DEFAULT.
6347
	Reported by: 	Marc Warne (GigaTux) <gigatux>
6348
6349
2013-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
6350
6351
	Import new gnulib.
6352
6353
2013-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
6354
6355
	Use ACPI shutdown intests as traditional port was removed.
6356
6357
2013-04-11  Andrey Borzenkov <arvidjaar@gmail.com>
6358
6359
	* util/grub.d/30_os-prober.in: Add onstr to entries for visual
6360
	distinction.
6361
6362
2013-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
6363
6364
	Fix missing PVs if they don't contain "interesting" LV. Closes #38677.
6365
	Fix few warining messages and leaks while on it.
6366
6367
2013-04-09  Andrey Borzenkov <arvidjaar@gmail.com>
6368
6369
	* autogen.sh: Use "-h", not "-f", to test for existence of symbolic
6370
	links under grub-core/lib/libgcrypt-grub/mpi.
6371
6372
2013-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
6373
6374
	Fix ia64-efi image generation on big-endian machines. Deduplicate
6375
	some code while on it.
6376
	Reported by: Leif Lindholm.
6377
6378
2013-04-08  Andrey Borzenkov <arvidjaar@gmail.com>
6379
6380
	* grub-core/Makefile.core.def: Add kern/elfXX.c to elf module
6381
	as extra_dist.
6382
6383
2013-04-08  Andrey Borzenkov <arvidjaar@gmail.com>
6384
6385
	* grub-core/term/i386/pc/console.c: Fix cursor moving algorithm.
6386
6387
2013-04-08  Bryan Hundven <bryanhundven@gmail.com>
6388
6389
	* docs/grub-dev.texi: Move @itemize after @subsection to satisfy
6390
	texinfo-5.1.
6391
6392
2013-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
6393
6394
	* grub-core/normal/term.c: Few more fixes for menu entry editor
6395
	rendering.
6396
	Reported by: Andrey Borzenkov <arvidjaar@gmail.com>
6397
6398
2013-04-07  Vladimir Serbinenko  <phcoder@gmail.com>
6399
6400
	* grub-core/normal/term.c: Few more fixes for menu entry editor
6401
	rendering.
6402
	Reported by: Andrey Borzenkov <arvidjaar@gmail.com>
6403
6404
2013-04-06  Andrey Borzenkov <arvidjaar@gmail.com>
6405
6406
	* conf/Makefile.extra-dist (EXTRA_DIST): Add
6407
	grub-core/lib/libgcrypt/src/gcrypt.h.in and util/import_gcrypth.sed.
6408
6409
2013-04-06  Andrey Borzenkov <arvidjaar@gmail.com>
6410
6411
	* util/grub-install_header: Use @PACKAGE@.mo in message catalog name
6412
	instead of hardcoding grub.mo.
6413
6414
2013-04-05  Fedora Ninjas <grub2-owner@fedoraproject.org>
6415
6416
	* util/grub.d/30_os-prober.in: Support btrrfs linux-prober extensions.
6417
6418
2013-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
6419
6420
	Use GRUB_PROPERLY_ALIGNED_ARRAY in grub-core/disk/cryptodisk.c and
6421
	grub-core/disk/geli.c.
6422
6423
2013-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
6424
6425
	* util/grub-mkfont.c: Prefer enum to #define.
6426
6427
2013-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
6428
6429
	* grub-core/commands/acpi.c: Use sizeof rather than hardcoding the size.
6430
6431
2013-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
6432
6433
	Replace 8 with GRUB_CHAR_BIT in several places when appropriate.
6434
6435
2013-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
6436
6437
	Add new defines GRUB_RSDP_SIGNATURE_SIZE and GRUB_RSDP_SIGNATURE.
6438
6439
2013-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
6440
6441
	* grub-core/commands/verify.c: Use GRUB_CHAR_BIT.
6442
6443
2013-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
6444
6445
	* include/grub/bsdlabel.h: Use enums.
6446
6447
2013-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
6448
6449
	Move GRUB_CHAR_BIT to types.h.
6450
6451
2013-04-04  Andrey Borzenkov <arvidjaar@gmail.com>
6452
6453
	* docs/grub.texi: Document more user commands.
6454
6455
2013-04-04  Andrey Borzenkov  <arvidjaar@gmail.com>
6456
6457
	* docs/grub.texi: Document menuentry --id option.
6458
6459
2013-04-04  Francesco Lavra  <francescolavra.fl@gmail.com>
6460
6461
	* util/grub-mkimage.c: Introduce new define EFI32_HEADER_SIZE.
6462
6463
2013-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
6464
6465
	Unify file copying setup across different install scripts. Add
6466
	options for performing partial install.
6467
6468
2013-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
6469
2013-04-04  Peter Jones <pjones@redhat.com>
6470
6471
	* grub-core/disk/efi/efidisk.c: Handle partitions on non-512B disks.
6472
6473
2013-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
6474
6475
	Use TSC as a possible time source on i386-ieee1275.
6476
6477
2013-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
6478
6479
	* grub-core/bus/usb/usbtrans.c (grub_usb_bulk_readwrite_packetize):
6480
	Init err.
6481
6482
2013-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
6483
6484
	* util/grub-setup.c (setup): Handle some corner cases.
6485
6486
2013-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
6487
6488
	* grub-core/lib/posix_wrap/locale.h [GRUB_UTIL]: Include host locale.h.
6489
6490
2013-04-03  Vladimir Serbinenko  <phcoder@gmail.com>
6491
6492
	* grub-core/commands/verify.c: Save verified file to avoid it being
6493
	tampered with after verification was done.
6494
6495
2013-04-03  Vladimir Serbinenko  <phcoder@gmail.com>
6496
6497
	* grub-core/term/i386/pc/console.c (grub_console_getwh): Decrease
6498
	reported width by one to compensate for curesor algorithm problem.
6499
6500
2013-04-03  Vladimir Serbinenko  <phcoder@gmail.com>
6501
6502
	Fix screen corruption in menu entry editor and simplify the code
6503
	flow while on it.
6504
6505
2013-04-03  Andrey Borzenkov <arvidjaar@gmail.com>
6506
6507
	* util/grub-mount.c (fuse_init): Return error if fuse_main
6508
	failed.
6509
6510
2013-04-03  Francesco Lavra  <francescolavra.fl@gmail.com>
6511
6512
	* include/grub/elf.h: Add missing ARM relocation codes and fix
6513
	  existing ones.
6514
6515
2013-04-03  Vladimir Testov <vladimir.testov@rosalab.ru>
6516
6517
	* grub-core/gfxmenu/gui_progress_bar.c: Handle padding sizes.
6518
6519
2013-04-03  Vladimir Testov <vladimir.testov@rosalab.ru>
6520
2013-04-03  Vladimir Serbinenko  <phcoder@gmail.com>
6521
6522
	* grub-core/gfxmenu/gui_circular_progress.c: Take both width and height
6523
	into account when calculating radius.
6524
6525
2013-04-03  Vladimir Testov <vladimir.testov@rosalab.ru>
6526
6527
	* grub-core/gfxmenu/view.c: Fix off-by-one error.
6528
6529
2013-04-03  Vladimir Testov <vladimir.testov@rosalab.ru>
6530
6531
	* grub-core/gfxmenu/gui_circular_progress.c: Fix off-by-one error.
6532
6533
2013-04-01  Radosław Szymczyszyn <lavrin@gmail.com>
6534
6535
	* grub-core/partmap/apple.c (apple_partition_map_iterate): Add
6536
	missing closing bracket.
6537
6538
2013-04-01  Radosław Szymczyszyn <lavrin@gmail.com>
6539
6540
	* INSTALL: Mention xorriso requirement.
6541
6542
2013-03-31  Andrey Borzenkov <arvidjaar@gmail.com>
6543
6544
	* grub-core/commands/verify.c: Fix hash algorithms values for
6545
	the first three hashes - they start with 1, not with 0.
6546
6547
2013-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
6548
6549
	* grub-core/kern/efi/mm.c (grub_efi_finish_boot_services):
6550
	Try terminating EFI services several times due to quirks in some
6551
	implementations.
6552
6553
2013-03-26  Colin Watson  <cjwatson@ubuntu.com>
6554
6555
	* grub-core/commands/acpihalt.c (skip_ext_op): Add support for
6556
	  skipping Event, Device, Processor, PowerRes, ThermalZone, and
6557
	  BankField extended opcodes.
6558
	  (get_sleep_type): Add minimal scope handling (just enough to
6559
	  handle setting the scope to the root path).
6560
	  (grub_acpi_halt): Parse any SSDTs as well as the DSDT.
6561
	* include/grub/acpi.h: Add enumeration values for Event, Device,
6562
	  Processor, PowerRes, ThermalZone, and BankField extended opcodes.
6563
6564
2013-03-26  Vladimir Testov <vladimir.testov@rosalab.ru>
6565
6566
	* grub-core/gfxmenu/font.c (grub_font_get_string_width): Fix
6567
	memory leak.
6568
6569
2013-03-25  Vladimir Serbinenko  <phcoder@gmail.com>
6570
6571
	* grub-core/disk/ahci.c: Give more time for AHCI request.
6572
6573
2013-03-25  Vladimir Serbinenko  <phcoder@gmail.com>
6574
6575
	* grub-core/normal/menu.c: Wait if there were errors shown at "boot"
6576
	command.
6577
6578
2013-03-25  Vladimir Serbinenko  <phcoder@gmail.com>
6579
6580
	Replace the region at 0 from coreboot tables to available in BSD
6581
	memory map.
6582
6583
2013-03-24  Vladimir Serbinenko  <phcoder@gmail.com>
6584
6585
	* util/grub.d/20_linux_xen.in: Automatically add no-real-mode edd=off on
6586
	non-BIOS platforms.
6587
6588
2013-03-24  Vladimir Serbinenko  <phcoder@gmail.com>
6589
6590
	* grub-core/Makefile.core.def (vga): Disable on coreboot and multiboot
6591
	platforms.
6592
6593
2013-03-24  Vladimir Serbinenko  <phcoder@gmail.com>
6594
6595
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Fix
6596
	handling of multi-device filesystems.
6597
6598
2013-03-24  Vladimir Serbinenko  <phcoder@gmail.com>
6599
6600
	* grub-core/Makefile.core.def (vbe): Disable on coreboot and multiboot
6601
	platforms.
6602
6603
2013-03-24  Vladimir Serbinenko  <phcoder@gmail.com>
6604
6605
	Add new 'proc' filesystem framework and put luks_script into it.
6606
6607
2013-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
6608
6609
	* grub-core/term/at_keyboard.c: Increase robustness on coreboot
6610
	and qemu.
6611
6612
2013-03-22  Vladimir Serbinenko  <phcoder@gmail.com>
6613
6614
	* grub-core/fs/zfs/zfs.c: Fix incorrect handling of special volumes.
6615
6616
2013-03-22  Vladimir Serbinenko  <phcoder@gmail.com>
6617
6618
	Add ability to generate newc additions on runtime.
6619
6620
2013-03-22  Vladimir Serbinenko  <phcoder@gmail.com>
6621
6622
	* grub-core/commands/i386/coreboot/cbls.c: Fix typos and wrong
6623
	description.
6624
6625
2013-03-21  Vladimir Serbinenko  <phcoder@gmail.com>
6626
6627
	* po/POTFILES.in: Regenerate.
6628
6629
2013-03-20  Vladimir Serbinenko  <phcoder@gmail.com>
6630
6631
	* grub-core/commands/verify.c (hashes): Add several hashes
6632
	from the spec.
6633
6634
2013-03-20  Vladimir Serbinenko  <phcoder@gmail.com>
6635
6636
	Slight improve in USB-related boot-time checkpoints.
6637
6638
2013-03-20  Vladimir Serbinenko  <phcoder@gmail.com>
6639
6640
	* grub-core/commands/boottime.c: Fix copyright header.
6641
6642
2013-03-20  Vladimir Serbinenko  <phcoder@gmail.com>
6643
6644
	New commands cbmemc, lscoreboot, coreboot_boottime to inspect
6645
	coreboot tables content. Support for cbmemc.
6646
6647
2013-03-20  Vladimir Serbinenko  <phcoder@gmail.com>
6648
6649
	Fix a conflict between ports structures with 2 controllers of
6650
	same kind.
6651
6652
2013-03-20  Vladimir Serbinenko  <phcoder@gmail.com>
6653
6654
	* include/grub/boottime.h: Add missing file.
6655
6656
2013-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
6657
6658
	Initialize USB ports in parallel to speed-up boot.
6659
6660
2013-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
6661
6662
	Fix USB devices not being detected when requested
6663
	due to delayed attach.
6664
6665
2013-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
6666
6667
	Implement boot time analysis framework.
6668
6669
2013-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
6670
6671
	Remove get_endpoint_descriptor and change all functions needing
6672
	descriptor to just receive it as argument rather than endpoint
6673
	address.
6674
6675
2013-03-19  Aleš Nesrsta  <starous@volny.cz>
6676
6677
	Better estimate the maximum USB transfer size.
6678
6679
2013-03-17  Vladimir Serbinenko  <phcoder@gmail.com>
6680
6681
	Resend a packet if we got the wrong buffer in status.
6682
6683
2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
6684
6685
	* grub-core/loader/i386/bsdXX.c (grub_openbsd_find_ramdisk): Use
6686
	multiplication rather than division.
6687
6688
2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
6689
6690
	* grub-core/lib/arg.c (grub_arg_list_alloc): Use shifts rather
6691
	than divisions.
6692
6693
2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
6694
6695
	* grub-core/commands/verify.c (grub_verify_signature): Use unsigned
6696
	operations to have intended shifts and not divisions.
6697
6698
2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
6699
6700
	* grub-core/loader/i386/pc/plan9.c (fill_disk): Fix types to use
6701
	intended shifts rather than division.
6702
6703
2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
6704
6705
	* include/grub/datetime.h (grub_datetime2unixtime): Fix unixtime
6706
	computation for some years before epoch. Avode confusing division
6707
	while on it.
6708
6709
2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
6710
6711
	* grub-core/video/i386/pc/vbe.c
6712
	(grub_video_vbe_print_adapter_specific_info): Replace division by
6713
	shifts.
6714
6715
2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
6716
6717
	Adjust types in gdb module to have intended unsigned shifts rather than
6718
	signed divisions.
6719
6720
2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
6721
6722
	* grub-core/fs/hfs.c (grub_hfs_read_file): Avoid divmod64 since the
6723
	maximum size is 4G - 1 on hfs
6724
6725
2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
6726
6727
	Avoid costly 64-bit division in grub_get_time_ms on most platforms.
6728
6729
2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
6730
6731
	* grub-core/fs/fshelp.c (grub_fshelp_log2blksize): Remove now unused
6732
	function.
6733
6734
2013-03-07  Andrey Borzenkov <arvidjaar@gmail.com>
6735
6736
	* grub-core/fs/iso9660.c (add_part): Remove always_inline attribute
6737
	causing gcc error with gcc 4.7.1.
6738
6739
2013-03-07  Nickolai Zeldovich <nickolai@csail.mit.edu>
6740
6741
	* grub-core/commands/acpi.c (grub_acpi_create_ebda): Don't
6742
	dereference null pointer. While the code is technically correct, gcc
6743
	may eliminate a null check if pointer is already dereferenced.
6744
6745
2013-03-07  Nickolai Zeldovich <nickolai@csail.mit.edu>
6746
6747
	* grub-core/normal/crypto.c (read_crypto_list): Fix incorrect
6748
	OOM check.
6749
	* grub-core/normal/term.c (read_terminal_list): Likewise.
6750
6751
2013-03-07  Vladimir Serbinenko  <phcoder@gmail.com>
6752
6753
	Lift up core size limits on some platforms. Fix potential memory
6754
	corruption with big core on small memory systems. Document remaining
6755
	limits.
6756
6757
2013-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
6758
6759
	* grub-core/term/terminfo.c (grub_terminfo_cls): Issue an explicit
6760
	gotoxy to 0,0.
6761
6762
2013-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
6763
6764
	Remove all trampoline support. Add -Wtrampolines when
6765
	present. Remove symbols used for trampolines to make
6766
	link fail if trampolines are present.
6767
6768
2013-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
6769
6770
	* grub-core/script/execute.c (grub_script_arglist_to_argv): Move
6771
	append out of its parent.
6772
6773
2013-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
6774
6775
	* grub-core/commands/regexp.c (set_matches): Move setvar out of its
6776
	parent.
6777
6778
2013-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
6779
6780
	* grub-core/kern/env.c, include/grub/env.h: Change iterator through
6781
	all vars to a macro. All users updated.
6782
6783
2013-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
6784
6785
	* grub-core/disk/ieee1275/nand.c: Fix compilation on
6786
	i386-ieee1275.
6787
6788
2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
6789
6790
	* include/grub/cmos.h: Handle high CMOS addresses on sparc64.
6791
6792
2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
6793
6794
	* include/grub/mips/loongson/cmos.h: Fix high CMOS addresses.
6795
6796
2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
6797
6798
	Move to more hookless approach in IEEE1275 devices handling.
6799
6800
2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
6801
6802
	* grub-core/kern/term.c (grub_term_normal_color),
6803
	(grub_term_highlight_color): Add back lost defaults.
6804
6805
2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
6806
6807
	Make elfload not use hooks. Opt for flags and iterators instead.
6808
6809
2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
6810
6811
	* grub-core/lib/ia64/longjmp.S: Fix the name of longjmp function.
6812
	* grub-core/lib/ia64/setjmp.S: Fix the name of setjmp function.
6813
6814
2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
6815
6816
	* grub-core/script/execute.c (gettext_append): Remove nested functions.
6817
6818
2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
6819
6820
	* grub-core/normal/charset.c (grub_bidi_logical_to_visual): Add
6821
	hook pass-through parameter. All users updated and unnested.
6822
6823
2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
6824
6825
	* grub-core/commands/loadenv.c (grub_cmd_list_env): Move print_var
6826
	out of its parent.
6827
6828
2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
6829
6830
	* grub-core/fs/hfs.c: Remove nested functions.
6831
6832
2013-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
6833
6834
	* grub-core/fs/hfsplus.c (grub_hfsplus_btree_iterate_node): Pass
6835
	the context through.
6836
	(grub_hfsplus_iterate_dir): Move nested function out of its parent.
6837
6838
2013-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
6839
6840
	* util/grub-editenv.c (list_variables): Move print_var out of its
6841
	parent.
6842
6843
2013-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
6844
6845
	* grub-core/kern/emu/hostdisk.c (read_device_map): Remove nested
6846
	function.
6847
6848
2013-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
6849
6850
	* grub-core/gentrigtables.c: Make tables const.
6851
6852
2013-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
6853
6854
	Remove nested functions from videoinfo iterators.
6855
6856
2013-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
6857
6858
	* grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Fix compilation
6859
	for 64-bit platforms.
6860
6861
2013-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
6862
6863
	* grub-core/disk/efi/efidisk.c: Transform iterate_child_devices into
6864
	a FOR_CHILDREN macro.
6865
6866
2013-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
6867
6868
	* grub-core/kern/main.c (grub_set_prefix_and_root): Strip trailing
6869
	platform from firmware path.
6870
6871
2013-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
6872
6873
	Enable linux16 on non-BIOS systems for i.a. memtest.
6874
6875
	* grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Handle hole at 0
6876
	correctly.
6877
	* grub-core/Makefile.core.def (linux16): Enable on all x86 flavours.
6878
6879
2013-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
6880
6881
	* grub-core/kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate):
6882
	Fix end of table condition.
6883
6884
2013-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
6885
6886
	* grub-core/lib/arg.c (grub_arg_show_help): Move showargs
6887
	out of its parent.
6888
6889
2013-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
6890
6891
	* grub-core/fs/jfs.c: Remove nested functions.
6892
6893
2013-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
6894
6895
	* grub-core/fs/minix.c: Remove nested functions.
6896
6897
2013-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
6898
6899
	* grub-core/fs/iso9660.c: Remove nested functions.
6900
6901
2013-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
6902
6903
	* grub-core/commands/parttool.c (grub_cmd_parttool): Move show_help out
6904
	of parent function.
6905
6906
2013-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
6907
6908
	* util/grub-fstest.c: Remove nested functions.
6909
6910
2013-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
6911
6912
	* grub-core/loader/machoXX.c: Remove nested functions.
6913
6914
2013-02-27  Colin Watson  <cjwatson@ubuntu.com>
6915
6916
	Remove nested functions from disk and file read hooks.
6917
6918
	* include/grub/disk.h (grub_disk_read_hook_t): New type.
6919
	(struct grub_disk): Add read_hook_data member.
6920
	* include/grub/file.h (struct grub_file): Likewise.
6921
	* include/grub/fshelp.h (grub_fshelp_read_file): Add read_hook_data
6922
	argument.
6923
6924
	Update all callers.
6925
6926
2012-02-27  Andrey Borzenkov <arvidjaar@gmail.com>
6927
6928
	* grub-core/partmap/msdos.c (grub_partition_msdos_iterate):
6929
	Fix off by one error in enumerating extended partitions.
6930
6931
2013-02-26  Andrey Borzenkov <arvidjaar@gmail.com>
6932
6933
	* grub-core/disk/efi/efidisk.c(grub_efidisk_get_device_name): Fix
6934
	memory leak if device name is not found.
6935
6936
2013-02-25  Andrey Borzenkov <arvidjaar@gmail.com>
6937
6938
	* grub-core/normal/menu_entry.c (update_screen): remove
6939
	unused variable `off' which caused scroll down arrow to be always shown.
6940
6941
2013-02-25  Andrey Borzenkov <arvidjaar@gmail.com>
6942
6943
	* grub-core/normal/menu_entry.c (insert_string): fix off by one
6944
	access to unallocated memory.
6945
6946
2013-02-25  Andrey Borzenkov <arvidjaar@gmail.com>
6947
6948
	* Makefile.util.def: Add partmap/msdos.c to common library.
6949
	* include/grub/msdos_partition.h: Add GRUB_PC_PARTITION_TYPE_LDM
6950
	* grub-core/disk/ldm.c: Check for existence of
6951
	GRUB_PC_PARTITION_TYPE_LDM.
6952
6953
2013-02-25  Vladimir Serbinenko  <phcoder@gmail.com>
6954
6955
	* grub-core/normal/misc.c (grub_normal_print_device_info): Use KiB to display
6956
	sizes and display sector size.
6957
6958
2013-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
6959
6960
	Implement new command cmosdump.
6961
6962
2013-02-19  Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
6963
6964
	Support Openfirmware disks with non-512B sectors.
6965
6966
	* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_open): Get the block
6967
	size of the disk.
6968
	* (grub_ofdisk_get_block_size): New function.
6969
	* (grub_ofdisk_prepare): Use the correct block size.
6970
	* (grub_ofdisk_read): Likewise.
6971
	* (grub_ofdisk_write): Likewise.
6972
	* include/grub/ieee1275/ofdisk.h (grub_ofdisk_get_block_size):
6973
	New proto.
6974
6975
2013-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
6976
6977
	* grub-core/commands/lsacpi.c: Fix types on 64-bit platform.
6978
6979
2013-02-04  Vladimir Serbinenko  <phcoder@gmail.com>
6980
6981
	* grub-core/disk/cryptodisk.c (grub_cryptodisk_scan_device): Don't stop
6982
	on first error.
6983
6984
2013-02-01  Vladimir Serbinenko  <phcoder@gmail.com>
6985
6986
	* grub-core/fs/fshelp.c (find_file): Set oldnode to zero after
6987
	freeing it.
6988
6989
2013-02-01  Vladimir Serbinenko  <phcoder@gmail.com>
6990
6991
	Implement USBDebug (full USB stack variant).
6992
6993
2013-02-01  Vladimir Serbinenko  <phcoder@gmail.com>
6994
6995
	* grub-core/commands/lsacpi.c: Show more info. Hide some boring parts
6996
	unless they have unexpected values.
6997
6998
2013-02-01  Vladimir Serbinenko  <phcoder@gmail.com>
6999
7000
	* grub-core/bus/usb/usb.c (grub_usb_device_attach): Add missing
7001
	grub_print_error.
7002
7003
2013-02-01  Vladimir Serbinenko  <phcoder@gmail.com>
7004
7005
	* grub-core/bus/usb/serial/common.c (grub_usbserial_attach): Fix missing
7006
	zero-out of port structure.
7007
7008
2013-01-30  Vladimir Serbinenko  <phcoder@gmail.com>
7009
7010
	* grub-core/fs/xfs.c (grub_xfs_read_block): Fix computation in presence
7011
	of extended attributes.
7012
7013
2013-01-27  Andrey Borzenkov <arvidjaar@gmail.com>
7014
7015
	* util/grub-install.in: change misleading comment about
7016
	device.map creation
7017
7018
2013-01-27  Vladimir Serbinenko  <phcoder@gmail.com>
7019
7020
	* grub-core/normal/menu_text.c (grub_menu_init_page): Fix behaviour
7021
	when menu highlight color isn't set.
7022
7023
2013-01-27  C. Masloch  <pushbx@38.de>
7024
7025
	Improve FreeDOS direct loading support compatibility.
7026
7027
	* include/grub/i386/relocator.h (grub_relocator16_state):
7028
	New member ebp.
7029
	* grub-core/lib/i386/relocator.c (grub_relocator16_ebp): New extern
7030
	variable.
7031
	(grub_relocator16_boot): Handle %ebp.
7032
	* grub-core/lib/i386/relocator16.S: Likewise.
7033
	* grub-core/loader/i386/pc/freedos.c:
7034
	Load BPB to pass kernel which partition to load from.
7035
	Check that kernel file is not too large.
7036
	Set register dl to BIOS unit number as well.
7037
7038
2013-01-22  Colin Watson  <cjwatson@ubuntu.com>
7039
7040
	* util/grub-reboot.in (usage): Document the need for
7041
	GRUB_DEFAULT=saved.
7042
	* util/grub-set-default.in (usage): Likewise.
7043
	Reported by: Brian Candler.  Fixes Ubuntu bug #1102925.
7044
7045
2013-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
7046
7047
	* grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Include sys/types.h rather
7048
	than defining WORDS_BIGENDIAN manually.
7049
7050
2013-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
7051
7052
	* include/grub/kernel.h (FOR_MODULES): Adjust to preserve alignment
7053
	invariants.
7054
7055
2013-01-21  Colin Watson  <cjwatson@ubuntu.com>
7056
7057
	* grub-core/font/font.c (blit_comb: do_blit): Make static instead of
7058
	nested.
7059
	(blit_comb: add_device_width): Likewise.
7060
7061
2013-01-21  Colin Watson  <cjwatson@ubuntu.com>
7062
7063
	Remove nested functions from USB iterators.
7064
7065
	* include/grub/usb.h (grub_usb_iterate_hook_t): New type.
7066
	(grub_usb_controller_iterate_hook_t): Likewise.
7067
	(grub_usb_iterate): Add hook_data argument.
7068
	(grub_usb_controller_iterate): Likewise.
7069
	(struct grub_usb_controller_dev.iterate): Likewise.
7070
7071
	Update all implementations and callers.
7072
7073
2013-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
7074
7075
	* grub-core/normal/term.c (print_ucs4_terminal): Don't output right
7076
	margin when not needed.
7077
7078
2013-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
7079
7080
	Make color variables global instead of it being per-terminal.
7081
7082
2013-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
7083
7084
	* grub-core/commands/ls.c (grub_ls_print_devices): Add missing
7085
	asterisk.
7086
7087
2013-01-21  Colin Watson  <cjwatson@ubuntu.com>
7088
7089
	Fix powerpc and sparc64 build failures caused by un-nesting memory
7090
	map iterators.
7091
7092
2013-01-21  Colin Watson  <cjwatson@ubuntu.com>
7093
7094
	* grub-core/disk/arc/arcdisk.c (grub_arcdisk_iterate): Fix
7095
	parameter declarations.
7096
7097
2013-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
7098
7099
	* grub-core/commands/lsmmap.c: Fix unused variable on emu.
7100
7101
2013-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
7102
7103
	Improve spkmomdem reliability by adding a separator between bytes.
7104
7105
2013-01-21  Colin Watson  <cjwatson@ubuntu.com>
7106
7107
	* grub-core/partmap/msdos.c (embed_signatures): Add the signature of
7108
	an Acer registration utility with several sightings in the wild.
7109
	Reported by: Rickard Westman.  Fixes Ubuntu bug #987022.
7110
7111
2013-01-21  Colin Watson  <cjwatson@ubuntu.com>
7112
7113
	Remove nested functions from filesystem directory iterators.
7114
7115
	* include/grub/fs.h (grub_fs_dir_hook_t): New type.
7116
	(struct grub_fs.dir): Add hook_data argument.
7117
7118
	Update all implementations and callers.
7119
7120
2013-01-21  Colin Watson  <cjwatson@ubuntu.com>
7121
7122
	* docs/grub.texi (Multi-boot manual config): Fix typo for
7123
	"recommended".
7124
7125
2013-01-20  Leif Lindholm  <leif.lindholm@arm.com>
7126
7127
	* util/grub-mkimage.c (main): Postpone freeing arguments.output
7128
	until after its use in generate_image.
7129
7130
2013-01-20  Colin Watson  <cjwatson@ubuntu.com>
7131
7132
	* grub-core/loader/i386/linux.c (grub_cmd_initrd): Don't add the
7133
	initrd size to addr_min, since the initrd will be allocated after
7134
	this address.
7135
7136
2013-01-20  Andrey Borzenkov <arvidjaar@gmail.com>
7137
7138
	* conf/Makefile.common: Fix autogen rules to pass definition
7139
	files on stdin; Makefile.util.am needs Makefile.utilgcry.def
7140
7141
2013-01-20  Leif Lindholm  <leif.lindholm@arm.com>
7142
7143
	* include/grub/elf.h: Update ARM definitions based on binutils.
7144
7145
2013-01-20  Aleš Nesrsta  <starous@volny.cz>
7146
7147
	Split long USB transfers into short ones.
7148
7149
2013-01-20  Andrey Borzenkov <arvidjaar@gmail.com>
7150
7151
	* docs/grub.texi (Simple configuration): Clarify GRUB_HIDDEN_TIMEOUT
7152
	is interrupted by ESC.
7153
7154
2013-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
7155
7156
	* util/grub-script-check.c (main): Uniform the error message.
7157
7158
2013-01-20  Colin Watson  <cjwatson@ubuntu.com>
7159
7160
	Remove nested functions from ELF iterators.
7161
7162
2013-01-20  Colin Watson  <cjwatson@ubuntu.com>
7163
7164
	Remove nested functions from device iterators.
7165
7166
	* include/grub/arc/arc.h (grub_arc_iterate_devs_hook_t): New type.
7167
	(grub_arc_iterate_devs): Add hook_data argument.
7168
	* include/grub/ata.h (grub_ata_dev_iterate_hook_t): New type.
7169
	(struct grub_ata_dev.iterate): Add hook_data argument.
7170
	* include/grub/device.h (grub_device_iterate_hook_t): New type.
7171
	(grub_device_iterate): Add hook_data argument.
7172
	* include/grub/disk.h (grub_disk_dev_iterate_hook_t): New type.
7173
	(struct grub_disk_dev.iterate): Add hook_data argument.
7174
	(grub_disk_dev_iterate): Likewise.
7175
	* include/grub/gpt_partition.h (grub_gpt_partition_map_iterate):
7176
	Likewise.
7177
	* include/grub/msdos_partition.h (grub_partition_msdos_iterate):
7178
	Likewise.
7179
	* include/grub/partition.h (grub_partition_iterate_hook_t): New
7180
	type.
7181
	(struct grub_partition_map.iterate): Add hook_data argument.
7182
	(grub_partition_iterate): Likewise.
7183
	* include/grub/scsi.h (grub_scsi_dev_iterate_hook_t): New type.
7184
	(struct grub_scsi_dev.iterate): Add hook_data argument.
7185
7186
	Update all callers.
7187
7188
2013-01-20  Colin Watson  <cjwatson@ubuntu.com>
7189
7190
	Fix typos for "developer" and "development".
7191
7192
2013-01-18  Vladimir Serbinenko  <phcoder@gmail.com>
7193
7194
	Add license header to spkmodem-recv.c.
7195
7196
2013-01-17  Vladimir Serbinenko  <phcoder@gmail.com>
7197
7198
	Rewrite spkmodem to use PIT for timing. Double the speed.
7199
7200
2013-01-16  Vladimir Serbinenko  <phcoder@gmail.com>
7201
7202
	Add new command pcidump.
7203
7204
2013-01-16  Vladimir Serbinenko  <phcoder@gmail.com>
7205
7206
	New terminal outputs using serial: morse and spkmodem.
7207
7208
2013-01-16  Vladimir Serbinenko  <phcoder@gmail.com>
7209
7210
	Improve bidi handling in entry editor.
7211
7212
2013-01-16  Vladimir Serbinenko  <phcoder@gmail.com>
7213
7214
	* grub-core/script/lexer.c (grub_script_lexer_init): Rename getline
7215
	argument to prevent name collision.
7216
7217
2013-01-15  Colin Watson  <cjwatson@ubuntu.com>
7218
7219
	Remove nested functions from script reading and parsing.
7220
7221
	* grub-core/kern/parser.c (grub_parser_split_cmdline): Add
7222
	getline_data argument, passed to getline.
7223
	* grub-core/kern/rescue_parser.c (grub_rescue_parse_line): Add
7224
	getline_data argument, passed to grub_parser_split_cmdline.
7225
	* grub-core/script/lexer.c (grub_script_lexer_yywrap): Pass
7226
	lexerstate->getline_data to lexerstate->getline.
7227
	(grub_script_lexer_init): Add getline_data argument, saved in
7228
	lexerstate->getline_data.
7229
	* grub-core/script/main.c (grub_normal_parse_line): Add getline_data
7230
	argument, passed to grub_script_parse.
7231
	* grub-core/script/script.c (grub_script_parse): Add getline_data
7232
	argument, passed to grub_script_lexer_init.
7233
	* include/grub/parser.h (grub_parser_split_cmdline): Update
7234
	prototype.  Update all callers to pass appropriate getline data.
7235
	(struct grub_parser.parse_line): Likewise.
7236
	(grub_rescue_parse_line): Likewise.
7237
	* include/grub/reader.h (grub_reader_getline_t): Add void *
7238
	argument.
7239
	* include/grub/script_sh.h (struct grub_lexer_param): Add
7240
	getline_data member.
7241
	(grub_script_parse): Update prototype.  Update all callers to pass
7242
	appropriate getline data.
7243
	(grub_script_lexer_init): Likewise.
7244
	(grub_normal_parse_line): Likewise.
7245
7246
	* grub-core/commands/legacycfg.c (legacy_file_getline): Add unused
7247
	data argument.
7248
	* grub-core/kern/parser.c (grub_parser_execute: getline): Make
7249
	static instead of nested.  Rename to ...
7250
	(grub_parser_execute_getline): ... this.
7251
	* grub-core/kern/rescue_reader.c (grub_rescue_read_line): Add unused
7252
	data argument.
7253
	* grub-core/normal/main.c (read_config_file: getline): Make static
7254
	instead of nested.  Rename to ...
7255
	(read_config_file_getline): ... this.
7256
	(grub_normal_read_line): Add unused data argument.
7257
	* grub-core/script/execute.c (grub_script_execute_sourcecode:
7258
	getline): Make static instead of nested.  Rename to ...
7259
	(grub_script_execute_sourcecode_getline): ... this.
7260
	* util/grub-script-check.c (main: get_config_line): Make static
7261
	instead of nested.
7262
7263
2013-01-15  Colin Watson  <cjwatson@ubuntu.com>
7264
7265
	Remove nested functions from memory map iterators.
7266
7267
	* grub-core/efiemu/mm.c (grub_efiemu_mmap_iterate): Add hook_data
7268
	argument, passed to hook.
7269
	* grub-core/kern/i386/coreboot/mmap.c
7270
	(grub_linuxbios_table_iterate): Likewise.
7271
	(grub_machine_mmap_iterate: iterate_linuxbios_table): Make static
7272
	instead of nested.
7273
	(grub_machine_mmap_iterate): Add hook_data argument.
7274
	* grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_iterate):
7275
	Add hook_data argument, passed to hook.
7276
	* grub-core/kern/i386/pc/mmap.c (grub_machine_mmap_iterate):
7277
	Likewise.
7278
	* grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_iterate):
7279
	Likewise.
7280
	* grub-core/kern/ieee1275/mmap.c (grub_machine_mmap_iterate):
7281
	Likewise.
7282
	* grub-core/kern/mips/arc/init.c (grub_machine_mmap_iterate):
7283
	Likewise.
7284
	* grub-core/kern/mips/loongson/init.c (grub_machine_mmap_iterate):
7285
	Likewise.
7286
	* grub-core/kern/mips/qemu_mips/init.c (grub_machine_mmap_iterate):
7287
	Likewise.
7288
	* grub-core/mmap/efi/mmap.c (grub_efi_mmap_iterate): Likewise.
7289
	(grub_machine_mmap_iterate): Likewise.
7290
	* grub-core/mmap/mmap.c (grub_mmap_iterate): Likewise.
7291
	* include/grub/efiemu/efiemu.h (grub_efiemu_mmap_iterate): Update
7292
	prototype.
7293
	* include/grub/memory.h (grub_memory_hook_t): Add data argument.
7294
	Remove NESTED_FUNC_ATTR from here and from all users.
7295
	(grub_mmap_iterate): Update prototype.
7296
	(grub_efi_mmap_iterate): Update prototype.  Update all callers to
7297
	pass appropriate hook data.
7298
	(grub_machine_mmap_iterate): Likewise.
7299
7300
	* grub-core/commands/acpi.c (grub_acpi_create_ebda: find_hook): Make
7301
	static instead of nested.
7302
	* grub-core/commands/lsmmap.c (grub_cmd_lsmmap: hook): Likewise.
7303
	Rename to ...
7304
	(lsmmap_hook): ... this.
7305
	* grub-core/efiemu/mm.c (grub_efiemu_mmap_init: bounds_hook):
7306
	Likewise.
7307
	(grub_efiemu_mmap_fill: fill_hook): Likewise.
7308
	* grub-core/kern/i386/coreboot/init.c (grub_machine_init:
7309
	heap_init): Likewise.
7310
	* grub-core/kern/i386/pc/init.c (grub_machine_init: hook): Likewise.
7311
	Rename to ...
7312
	(mmap_iterate_hook): ... this.
7313
	* grub-core/kern/ieee1275/init.c (grub_claim_heap: heap_init):
7314
	Likewise.
7315
	* grub-core/lib/ieee1275/relocator.c
7316
	(grub_relocator_firmware_get_max_events: count): Likewise.
7317
	(grub_relocator_firmware_fill_events: fill): Likewise.  Rename
7318
	to ...
7319
	(grub_relocator_firmware_fill_events_iter): ... this.
7320
	* grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align:
7321
	hook): Likewise.  Rename to ...
7322
	(grub_relocator_alloc_chunk_align_iter): ... this.
7323
	* grub-core/loader/i386/bsd.c (generate_e820_mmap: hook): Likewise.
7324
	Rename to ...
7325
	(generate_e820_mmap_iter): ... this.
7326
	* grub-core/loader/i386/linux.c (find_mmap_size: hook): Likewise.
7327
	Rename to ...
7328
	(count_hook): ... this.
7329
	(grub_linux_boot: hook): Likewise.  Rename to ...
7330
	(grub_linux_boot_mmap_find): ... this.
7331
	(grub_linux_boot: hook_fill): Likewise.  Rename to ...
7332
	(grub_linux_boot_mmap_fill): ... this.
7333
	* grub-core/loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap:
7334
	hook): Likewise.  Rename to ...
7335
	(grub_fill_multiboot_mmap_iter): ... this.
7336
	* grub-core/loader/multiboot.c (grub_get_multiboot_mmap_count:
7337
	hook): Likewise.  Rename to ...
7338
	(count_hook): ... this.
7339
	* grub-core/loader/multiboot_mbi2.c (grub_fill_multiboot_mmap:
7340
	hook): Likewise.  Rename to ...
7341
	(grub_fill_multiboot_mmap_iter): ... this.
7342
	* grub-core/loader/powerpc/ieee1275/linux.c
7343
	(grub_linux_claimmap_iterate: alloc_mem): Likewise.
7344
	* grub-core/loader/sparc64/ieee1275/linux.c (alloc_phys: choose):
7345
	Likewise.  Rename to ...
7346
	(alloc_phys_choose): ... this.
7347
	(determine_phys_base: get_physbase): Likewise.
7348
	* grub-core/mmap/i386/mmap.c (grub_mmap_malign_and_register:
7349
	find_hook): Likewise.
7350
	* grub-core/mmap/i386/pc/mmap.c (preboot: fill_hook): Likewise.
7351
	(malloc_hook: count_hook): Likewise.
7352
	* grub-core/mmap/i386/uppermem.c (grub_mmap_get_lower: hook):
7353
	Likewise.  Rename to ...
7354
	(lower_hook): ... this.
7355
	(grub_mmap_get_upper: hook): Likewise.  Rename to ...
7356
	(upper_hook): ... this.
7357
	(grub_mmap_get_post64: hook): Likewise.  Rename to ...
7358
	(post64_hook): ... this.
7359
	* grub-core/mmap/mips/uppermem.c (grub_mmap_get_lower: hook):
7360
	Likewise.  Rename to ...
7361
	(lower_hook): ... this.
7362
	(grub_mmap_get_upper: hook): Likewise.  Rename to ...
7363
	(upper_hook): ... this.
7364
	* grub-core/mmap/mmap.c (grub_mmap_iterate: count_hook): Likewise.
7365
	(grub_mmap_iterate: fill_hook): Likewise.
7366
	(fill_mask): Pass addr and mask within a single struct.
7367
	(grub_cmd_badram: hook): Make static instead of nested.  Rename
7368
	to ...
7369
	(badram_iter): ... this.
7370
	(grub_cmd_cutmem: hook): Likewise.  Rename to ...
7371
	(cutmem_iter): ... this.
7372
7373
2013-01-13  Vladimir Serbinenko  <phcoder@gmail.com>
7374
7375
	* grub-core/kern/emu/hostdisk.c (read_device_map): Explicitly
7376
	delimit path in strings using quotes.
7377
	* util/getroot.c (grub_guess_root_devices): Likewise.
7378
	(grub_make_system_path_relative_to_its_root): Likewise.
7379
	* util/grub-probe.c (probe): Likewise.
7380
	* util/ieee1275/ofpath.c (find_obppath): Likewise.
7381
	(xrealpath): Likewise.
7382
7383
2013-01-13  Vladimir Serbinenko  <phcoder@gmail.com>
7384
7385
	Fix compilation with older compilers.
7386
7387
	* grub-core/Makefile.core.def (mpi): Add mpi-inline.c.
7388
	* grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Remove redundant
7389
	declarations.
7390
	* grub-core/lib/posix_wrap/string.h: Include sys/types.h.
7391
	* grub-core/lib/posix_wrap/sys/types.h: Add common types.
7392
	* grub-core/lib/xzembed/xz_dec_lzma2.c (dict_put): Replace byte
7393
	identifier with b.
7394
	* grub-core/lib/xzembed/xz_dec_stream.c (dec_vli): Likewise.
7395
	* include/grub/crypto.h: Add type defines.
7396
	* util/import_gcrypth.sed: Remove duplicate type defines.
7397
7398
2013-01-13  Vladimir Serbinenko  <phcoder@gmail.com>
7399
7400
	New command list_trusted.
7401
7402
	* grub-core/commands/verify.c (grub_cmd_list): New function.
7403
7404
2013-01-13  Colin Watson  <cjwatson@ubuntu.com>
7405
7406
	* util/grub-mkimage.c (generate_image): Fix "size of public key"
7407
	info message.
7408
7409
2013-01-13  Colin Watson  <cjwatson@ubuntu.com>
7410
7411
	Remove nested functions from PCI iterators.
7412
7413
	* grub-core/bus/pci.c (grub_pci_iterate): Add hook_data argument,
7414
	passed to hook.  Update all callers to pass appropriate hook data.
7415
	* grub-core/bus/emu/pci.c (grub_pci_iterate): Likewise.
7416
	* include/grub/pci.h (grub_pci_iteratefunc_t): Add data argument.
7417
	Remove NESTED_FUNC_ATTR from here and from all users.
7418
	(grub_pci_iterate): Update prototype.
7419
	* grub-core/bus/cs5536.c (grub_cs5536_find: hook): Make static
7420
	instead of nested.  Rename to ...
7421
	(grub_cs5536_find_iter): ... this.
7422
	* grub-core/kern/efi/mm.c (stop_broadcom: find_card): Likewise.
7423
	* grub-core/kern/mips/loongson/init.c (init_pci: set_card):
7424
	Likewise.
7425
	* grub-core/kern/vga_init.c (grub_qemu_init_cirrus: find_card):
7426
	Likewise.
7427
	* grub-core/video/bochs.c (grub_video_bochs_setup: find_card):
7428
	Likewise.
7429
	* grub-core/video/cirrus.c (grub_video_cirrus_setup: find_card):
7430
	Likewise.
7431
	* grub-core/video/efi_uga.c (find_framebuf: find_card): Likewise.
7432
	* grub-core/video/radeon_fuloong2e.c
7433
	(grub_video_radeon_fuloong2e_setup: find_card): Likewise.
7434
	* grub-core/video/sis315pro.c (grub_video_sis315pro_setup:
7435
	find_card): Likewise.
7436
	* grub-core/video/sm712.c (grub_video_sm712_setup: find_card):
7437
	Likewise.
7438
7439
2013-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
7440
7441
	* grub-core/commands/verify.c: Mark messages for translating.
7442
7443
2013-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
7444
7445
	* grub-core/lib/libgcrypt_wrap/mem.c (gcry_x*alloc): Make out of memory
7446
	fatal.
7447
7448
2013-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
7449
7450
	* grub-core/lib/libgcrypt_wrap/mem.c (_gcry_log_bug): Make gcrypt bugs
7451
	fatal.
7452
7453
2013-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
7454
7455
	* autogen.sh: Do not try to delete nonexistant files.
7456
	* util/import_gcrypth.sed: Add some missing header removals.
7457
7458
2013-01-12  Colin Watson  <cjwatson@ubuntu.com>
7459
7460
	Clean up dangling references to grub-setup.
7461
	Fixes Ubuntu bug #1082045.
7462
7463
	* docs/grub.texi (Images): Refer generally to grub-install rather
7464
	than directly to grub-setup.
7465
	(Installing GRUB using grub-install): Remove direct reference to
7466
	grub-setup.
7467
	(Device map) Likewise.
7468
	(Invoking grub-install): Likewise.
7469
	* docs/man/grub-install.h2m (SEE ALSO): Likewise.
7470
	* docs/man/grub-mkimage.h2m (SEE ALSO): Likewise.
7471
	* util/grub-install.in (usage): Likewise.
7472
7473
	* util/bash-completion.d/grub-completion.bash.in (_grub_setup):
7474
	Apply to grub-bios-setup and grub-sparc64-setup rather than to
7475
	grub-setup.
7476
	* configure.ac: Remove grub_setup output variable.
7477
7478
	* docs/man/grub-bios-setup.h2m (NAME): Change name from grub-setup
7479
	to grub-bios-setup.
7480
	* docs/man/grub-sparc64-setup.h2m (NAME): Change name from
7481
	grub-setup to grub-sparc64-setup.
7482
7483
2013-01-11  Vladimir Serbinenko  <phcoder@gmail.com>
7484
7485
	Import gcrypt public-key cryptography and implement signature checking.
7486
7487
2013-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
7488
7489
	* grub-core/fs/ntfs.c: Ue more appropriate types.
7490
	* grub-core/fs/ntfscomp.c: Likewise.
7491
	* include/grub/ntfs.h: Likewise.
7492
7493
2013-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
7494
7495
	Support Apple FAT binaries on non-Apple platforms.
7496
7497
	* include/grub/macho.h (GRUB_MACHO_FAT_EFI_MAGIC): New define.
7498
	* include/grub/i386/macho.h (GRUB_MACHO_CPUTYPE_IS_HOST_CURRENT):
7499
	Likewise.
7500
	* grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Parse
7501
	Apple FAT binaries.
7502
7503
2013-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
7504
7505
	* grub-core/kern/disk.c (grub_disk_write): Fix sector number on 4K
7506
	sector devices.
7507
7508
2013-01-07  Colin Watson  <cjwatson@ubuntu.com>
7509
7510
	* grub-core/io/bufio.c (grub_bufio_open): Use grub_zalloc instead of
7511
	explicitly zeroing elements.
7512
	* grub-core/io/gzio.c (grub_gzio_open): Likewise.
7513
	* grub-core/io/lzopio.c (grub_lzopio_open): Remove explicit zeroing
7514
	of elements in a structure already allocated using grub_zalloc.
7515
	* grub-core/io/xzio.c (grub_xzio_open): Likewise.
7516
7517
2013-01-07  Colin Watson  <cjwatson@ubuntu.com>
7518
7519
	* docs/grub.texi (grub_cpu): New subsection.
7520
	(grub_platform): Likewise.
7521
7522
2013-01-07  Vladimir Serbinenko  <phcoder@gmail.com>
7523
7524
	* grub-core/fs/minix.c (grub_minix_read_file): Simplify arithmetics.
7525
7526
2013-01-05  Vladimir Serbinenko  <phcoder@gmail.com>
7527
7528
	* grub-core/fs/ext2.c (grub_ext2_read_block): Use shifts rather than
7529
	divisions.
7530
7531
2013-01-05  Vladimir Serbinenko  <phcoder@gmail.com>
7532
7533
	* grub-core/fs/ntfs.c: Eliminate useless divisions in favor of shifts.
7534
	* grub-core/fs/ntfscomp.c: Likewise.
7535
	* include/grub/ntfs.h (grub_ntfs_data): Replace spc with log_spc.
7536
	(grub_ntfs_comp): Likewise.
7537
7538
2013-01-05  Vladimir Serbinenko  <phcoder@gmail.com>
7539
7540
	* grub-core/fs/nilfs2.c (-grub_nilfs2_palloc_groups_per_desc_block):
7541
	Rename to ...
7542
	(grub_nilfs2_palloc_log_groups_per_desc_block): ... this. Return log
7543
	of groups_per_block. All users updated.
7544
7545
2013-01-05  Vladimir Serbinenko  <phcoder@gmail.com>
7546
7547
	* grub-core/disk/diskfilter.c (grub_diskfilter_write): Call
7548
	grub_error properly.
7549
	* grub-core/disk/ieee1275/nand.c (grub_nand_write): Likewise.
7550
	* grub-core/disk/loopback.c (grub_loopback_write): Likewise.
7551
7552
2013-01-03  Vladimir Serbinenko  <phcoder@gmail.com>
7553
7554
	* util/grub.d/10_kfreebsd.in: Correct the patch to zpool.cache as it's
7555
	always in /boot/zfs.
7556
	Reported by: Yuta Satoh.
7557
7558
2013-01-03  Yuta Satoh  <nigoro>
7559
7560
	* util/grub.d/10_kfreebsd.in: Fix improper references to grub-probe by
7561
	${grub_probe}
7562
7563
2013-01-03  Vladimir Serbinenko  <phcoder@gmail.com>
7564
7565
	* configure.ac: Extend -Wno-trampolines to host.
7566
7567
2013-01-03  Vladimir Serbinenko  <phcoder@gmail.com>
7568
7569
	* grub-core/fs/iso9660.c (grub_iso9660_susp_iterate): Avoid hang if
7570
	entry->len = 0.
7571
7572
2013-01-03  Colin Watson  <cjwatson@ubuntu.com>
7573
7574
	* docs/grub.texi (Invoking grub-mkrelpath): New section.
7575
	(Invoking grub-script-check): Likewise.
7576
7577
2013-01-03  Colin Watson  <cjwatson@ubuntu.com>
7578
7579
	* docs/grub.texi (Invoking grub-mount): New section.
7580
	Reported by: Filipus Klutiero.  Fixes Debian bug #666427.
7581
7582
2013-01-02  Colin Watson  <cjwatson@ubuntu.com>
7583
7584
	* grub-core/tests/lib/test.c (grub_test_run): Return non-zero on
7585
	test failures, so that a failing unit test correctly causes 'make
7586
	check' to fail.
7587
7588
2013-01-02  Colin Watson  <cjwatson@ubuntu.com>
7589
7590
	Fix failing printf test.
7591
7592
	* grub-core/kern/misc.c (grub_vsnprintf_real): Parse '-', '.', and
7593
	'$' in the correct order when collecting type information.
7594
7595
2013-01-02  Colin Watson  <cjwatson@ubuntu.com>
7596
7597
	* docs/grub.texi (configfile): Explain environment variable
7598
	handling.
7599
	(source): New section.
7600
	Reported by: Arbiel Perlacremaz.  Fixes Savannah bug #35564.
7601
7602
2012-12-31  Colin Watson  <cjwatson@ubuntu.com>
7603
7604
	Remove several trivially-unnecessary uses of nested functions.
7605
7606
	* grub-core/commands/i386/pc/sendkey.c
7607
	(grub_cmd_sendkey: find_key_code, find_ascii_code): Make static
7608
	instead of nested.
7609
	* grub-core/commands/legacycfg.c (legacy_file: getline): Likewise.
7610
	Rename to ...
7611
	(legacy_file_getline): ... this.
7612
	* grub-core/commands/loadenv.c (grub_cmd_load_env: set_var):
7613
	Likewise.
7614
	* grub-core/kern/corecmd.c (grub_core_cmd_set: print_env): Likewise.
7615
	* grub-core/kern/fs.c (grub_fs_probe: dummy_func): Likewise.  Rename
7616
	to ...
7617
	(probe_dummy_iter): ... this.
7618
	* grub-core/kern/i386/coreboot/mmap.c
7619
	(grub_linuxbios_table_iterate: check_signature): Likewise.
7620
	* grub-core/kern/parser.c (grub_parser_split_cmdline:
7621
	check_varstate): Likewise.  Mark inline.
7622
	* grub-core/lib/arg.c (find_short: fnd_short): Likewise.  Pass
7623
	an additional parameter.
7624
	(find_long: fnd_long): Likewise.  Pass two additional parameters.
7625
	* grub-core/lib/crc.c (init_crc32c_table: reflect): Likewise.
7626
	* grub-core/lib/crc64.c (init_crc64_table: reflect): Likewise.
7627
	* grub-core/lib/ieee1275/cmos.c (grub_cmos_find_port: hook):
7628
	Likewise.  Rename to ...
7629
	(grub_cmos_find_port_iter): ... this.
7630
	* grub-core/lib/ieee1275/datetime.c (find_rtc: hook): Likewise.
7631
	Rename to ...
7632
	(find_rtc_iter): ... this.
7633
7634
	* grub-core/normal/menu_entry.c (run): Fold nested editor_getsource
7635
	function directly into the function body, since it is only called
7636
	once.
7637
7638
2012-12-30  Colin Watson  <cjwatson@ubuntu.com>
7639
7640
	* grub-core/bus/usb/ehci.c (grub_ehci_pci_iter): Remove incorrect
7641
	__attribute__ ((unused)).
7642
	* grub-core/video/bochs.c (find_card): Likewise.
7643
	* grub-core/video/cirrus.c (find_card): Likewise.
7644
	* grub-core/video/radeon_fuloong2e.c (find_card): Likewise.
7645
	* grub-core/video/sis315pro.c (find_card): Likewise.
7646
	* grub-core/video/sm712.c (find_card): Likewise.
7647
7648
2012-12-28  Colin Watson  <cjwatson@ubuntu.com>
7649
7650
	* util/grub-mkconfig.in: Accept GRUB_TERMINAL_OUTPUT=vga_text.
7651
	Fixes Savannah bug #37821.
7652
7653
2012-12-28  Colin Watson  <cjwatson@ubuntu.com>
7654
7655
	Apply program name transformations at build-time rather than at
7656
	run-time.  Fixes Debian bug #696465.
7657
7658
	* acinclude.m4 (grub_TRANSFORM): New macro.
7659
	* configure.ac: Create output variables with transformed names for
7660
	most programs.
7661
	* util/bash-completion.d/grub-completion.bash.in: Use
7662
	pre-transformed variables for program names.
7663
	* util/grub-install.in: Likewise.
7664
	* util/grub-kbdcomp.in: Likewise.
7665
	* util/grub-mkconfig.in: Likewise.
7666
	* util/grub-mkconfig_lib.in: Likewise.
7667
	* util/grub-mknetdir.in: Likewise.
7668
	* util/grub-mkrescue.in: Likewise.
7669
	* util/grub-mkstandalone.in: Likewise.
7670
	* util/grub-reboot.in: Likewise.
7671
	* util/grub-set-default.in: Likewise.
7672
	* util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
7673
	* tests/util/grub-shell-tester.in: Remove unused assignment.
7674
	* tests/util/grub-shell.in: Likewise.
7675
	* util/grub.d/00_header.in: Likewise.
7676
7677
2012-12-28  Colin Watson  <cjwatson@ubuntu.com>
7678
7679
	Backport gnulib fixes for C11.  Fixes Savannah bug #37738.
7680
7681
	* grub-core/gnulib/stdio.in.h (gets): Warn on use only if
7682
	HAVE_RAW_DECL_GETS.
7683
	* m4/stdio_h.m4 (gl_STDIO_H): Check for gets.
7684
7685
2012-12-11  Vladimir Serbinenko  <phcoder@gmail.com>
7686
7687
	* util/grub.d/20_linux_xen.in: Addmissing assignment to machine.
7688
	Reported by: Eriks Latosheks <foresterlv>.
7689
7690
2012-12-10  Vladimir Serbinenko  <phcoder@gmail.com>
7691
7692
	* docs/grub.texi (Network): Update instructions on generating netboot
7693
	image.
7694
7695
2012-12-10  Vladimir Serbinenko  <phcoder@gmail.com>
7696
7697
	* grub-core/disk/cryptodisk.c (grub_cmd_cryptomount): Strip brackets
7698
	around device name if necessarry.
7699
7700
2012-12-10  Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
7701
7702
	* util/grub-install.in: Follow the symbolic link parameter added
7703
	to the file command.
7704
7705
2012-12-10  Andrey Borzenkov <arvidjaar@gmail.com>
7706
7707
	* util/grub-install.in: Remove stale TODO.
7708
7709
2012-12-10  Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
7710
7711
	* grub-core/kern/ieee1275/init.c (grub_machine_get_bootlocation): Use
7712
	dynamic allocation for the bootpath buffer.
7713
7714
2012-12-10  Dr. Tilmann Bubeck <t.bubeck@reinform.de>
7715
7716
	* grub-core/gfxmenu/view.c (init_terminal): Avoid making terminal
7717
	window too small.
7718
7719
2012-12-10  Vladimir Serbinenko  <phcoder@gmail.com>
7720
7721
	* grub-core/term/gfxterm.c (grub_virtual_screen_setup): Get font as
7722
	argument rather than font name. All users updated.
7723
	(grub_gfxterm_set_window): Likewise.
7724
7725
2012-12-10  Vladimir Testov  <vladimir.testov@rosalab.ru>
7726
7727
	* util/grub-mkfont.c (argp_parser): Fix a typo which prevented --asce
7728
	from working.
7729
7730
2012-12-10  Vladimir Serbinenko  <phcoder@gmail.com>
7731
7732
	* util/getroot.c (convert_system_partition_to_system_disk): Support
7733
	nbd disks.
7734
7735
2012-12-10  Vladimir Serbinenko  <phcoder@gmail.com>
7736
7737
	* grub-core/fs/ufs.c (grub_ufs_dir): Stop if direntlen is 0 to avoid
7738
	infinite loop on corrupted FS.
7739
7740
2012-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
7741
7742
	Fix big-endian mtime.
7743
7744
	* grub-core/fs/ufs.c (grub_ufs_inode): Split improperly attached
7745
	together sec and usec.
7746
	(grub_ufs_dir): Use correct byteswapping for UFS time.
7747
7748
2012-12-08  Vladimir Serbinenko  <phcoder@gmail.com>
7749
7750
	Support big-endian UFS1.
7751
7752
	* Makefile.util.def (libgrubmods): Add ufs_be.c
7753
	* grub-core/Makefile.core.def (ufs1_be): New module.
7754
	* grub-core/fs/ufs_be.c: New file.
7755
	* grub-core/fs/ufs.c: Declare grub_ufs_to_le* and use them throughout
7756
	the file.
7757
7758
2012-11-28  Leif Lindholm  <leif.lindholm@arm.com>
7759
7760
        * include/grub/types.h: Fix functionality unaffecting typo in
7761
        GRUB_TARGET_WORDSIZE conditional macro.
7762
7763
2012-11-28  Paulo Flabiano Smorigo  <pfsmorigo@br.ibm.com>
7764
7765
	* grub-core/net/bootp.c (parse_dhcp_vendor): Fix double increment.
7766
7767
2012-10-28  Grégoire Sutre  <gregoire.sutre@gmail.com>
7768
7769
	* util/grub.d/10_netbsd.in: Fix tab indentation and make sure
7770
	that /netbsd appears first (when it exists).
7771
7772
2012-10-12  Christoph Junghans  <ottxor@gentoo.org>
7773
7774
	* grub-core/Makefile.am (moddep.lst): Use $(AWK) rather than awk.
7775
	Fixes Savannah bug #37558.
7776
7777
2012-10-12  Colin Watson  <cjwatson@ubuntu.com>
7778
7779
	* grub-core/commands/configfile.c (GRUB_MOD_INIT): Correct
7780
	description of extract_entries_configfile.
7781
7782
2012-10-05  Colin Watson  <cjwatson@ubuntu.com>
7783
7784
	* grub-core/loader/i386/linux.c (allocate_pages): Fix spelling of
7785
	preferred_address.
7786
	(grub_cmd_linux): Likewise.
7787
	* grub-core/net/icmp6.c (struct prefix_option): Fix spelling of
7788
	preferred_lifetime.  Update all users.
7789
7790
2012-09-26  Colin Watson  <cjwatson@ubuntu.com>
7791
7792
	* Makefile.util.def (grub-mknetdir): Move to $prefix/bin.
7793
	Reported by: Daniel Kahn Gillmor.  Fixes Debian bug #688799.
7794
7795
2012-09-26  Colin Watson  <cjwatson@ubuntu.com>
7796
7797
	* util/grub-mkconfig_lib.in (is_path_readable_by_grub): Redirect
7798
	errors from grub-probe to /dev/null, not stdout.
7799
7800
2012-09-26  Vladimir Serbinenko  <phcoder@gmail.com>
7801
7802
	* grub-core/fs/affs.c (grub_affs_mount): Support AFFS bootblock in
7803
	sector 1.
7804
7805
2012-09-24  Colin Watson  <cjwatson@ubuntu.com>
7806
7807
	* util/grub-install.in: Make the error message if $source_dir
7808
	doesn't exist more useful.
7809
7810
2012-09-22  Colin Watson  <cjwatson@ubuntu.com>
7811
7812
	Fix grub-emu build on FreeBSD.
7813
7814
	* Makefile.util.def (grub-mount): Add LIBGEOM to ldadd.
7815
	* grub-core/net/drivers/emu/emunet.c: Only include Linux-specific
7816
	headers on Linux.
7817
	(GRUB_MOD_INIT): Return immediately on non-Linux platforms; this
7818
	implementation is currently Linux-specific.
7819
	* util/getroot.c (exec_pipe): Define only on Linux or when either
7820
	libzfs or libnvpair is unavailable.
7821
	(find_root_devices_from_poolname): Remove unused path variable.
7822
7823
2012-09-19  Colin Watson  <cjwatson@ubuntu.com>
7824
7825
	* grub-core/partmap/msdos.c (pc_partition_map_embed): Revert
7826
	incorrect off-by-one fix from 2011-02-12.  A 62-sector core image
7827
	should fit before end == 63.
7828
7829
2012-09-19  Colin Watson  <cjwatson@ubuntu.com>
7830
7831
	* util/grub-setup.c (write_rootdev): Remove unused core_img
7832
	parameter.  Update all callers.
7833
	(setup): Define core_sectors only if GRUB_SETUP_BIOS, to appease
7834
	'gcc -Wunused-but-set-variable'.  Remove unnecessary nested #ifdef
7835
	GRUB_SETUP_BIOS.
7836
7837
2012-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
7838
7839
	* util/grub-mkconfig_lib.in (grub_tab): New variable.
7840
	(grub_add_tab): New function.
7841
	* util/grub.d/10_hurd.in: Replace \t with $grub_tab orgrub_add_tab.
7842
	* util/grub.d/10_illumos.in: Likewise.
7843
	* util/grub.d/10_kfreebsd.in: Likewise.
7844
	* util/grub.d/10_linux.in: Likewise.
7845
	* util/grub.d/10_netbsd.in: Likewise.
7846
	* util/grub.d/10_windows.in: Likewise.
7847
	* util/grub.d/10_xnu.in: Likewise.
7848
	* util/grub.d/20_linux_xen.in: Likewise.
7849
	* util/grub.d/30_os-prober.in: Likewise.
7850
7851
2012-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
7852
7853
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
7854
	GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN on mac.
7855
	* grub-core/term/ieee1275/console.c (grub_console_init_lately): Use
7856
	ieee1275-nocursor if GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN is set.
7857
	* grub-core/term/terminfo.c (grub_terminfo_set_current): Add new type
7858
	ieee1275-nocursor.
7859
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value
7860
	GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN.
7861
7862
2012-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
7863
7864
	* grub-core/loader/i386/linux.c (grub_cmd_linux): Fix incorrect
7865
	le-conversion.
7866
	Reported by: BURETTE, Bernard.
7867
7868
2012-09-17  Colin Watson  <cjwatson@ubuntu.com>
7869
7870
	* util/grub-mkconfig_lib.in (grub_quote): Remove outdated sentence
7871
	from comment.
7872
7873
2012-09-14  Colin Watson  <cjwatson@ubuntu.com>
7874
7875
	* grub-core/term/terminfo.c: Only fix up powerpc key repeat on
7876
	IEEE1275 machines.  Fixes powerpc-emu compilation.
7877
	* include/grub/terminfo.h: Likewise.
7878
7879
2012-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
7880
7881
	* include/grub/efi/api.h (grub_efi_runtime_services): Make vendor_guid
7882
	a const pointer.
7883
	* grub-core/efiemu/runtime/efiemu.c (efiemu_memcpy): Make from a
7884
	const pointer.
7885
	(efiemu_set_variable): Make vendor_guid a const pointer.
7886
7887
2012-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
7888
7889
	Don't require grub-mkconfig_lib to generate manpages for programs.
7890
7891
	* gentpl.py (manpage): Additional argument adddeps. Add adddeps to
7892
	dependencies, don't add grub-mkconfig_lib.
7893
	(program): Pass empty adddeps.
7894
	(script): Pass grub-mkconfig_lib as adddeps.
7895
7896
2012-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
7897
7898
	* grub-core/disk/diskfilter.c (free_array) [GRUB_UTIL]: Fix memory leak.
7899
	* util/getroot.c (grub_find_device): Likewise.
7900
	(get_mdadm_uuid): Likewise.
7901
	(grub_util_is_imsm): Likewise.
7902
	(grub_util_pull_device): Likewise.
7903
	* util/grub-probe.c (probe): Likewise.
7904
7905
2012-09-10  Benoit Gschwind <gschwind>
7906
7907
	* grub-core/loader/efi/appleloader.c (devpath_8): New var.
7908
	(devs): Add devpath_8.
7909
7910
2012-09-08  Peter Jones <pjones@redhat.com>
7911
7912
	* grub-core/Makefile.core.def (efifwsetup): New module.
7913
	* grub-core/commands/efi/efifwsetup.c: New file.
7914
	* grub-core/kern/efi/efi.c (grub_efi_set_variable): New function
7915
	* include/grub/efi/api.h (GRUB_EFI_OS_INDICATIONS_BOOT_TO_FW_UI):
7916
	New define.
7917
	* include/grub/efi/efi.h (grub_efi_set_variable): New proto.
7918
7919
2012-09-05  Jiri Slaby <jslaby@suse.cz>
7920
7921
	* configure.ac: Add SuSe path.
7922
7923
2012-09-05  Colin Watson  <cjwatson@ubuntu.com>
7924
7925
	* NEWS: Fix typo.
7926
7927
2012-09-05  Colin Watson  <cjwatson@ubuntu.com>
7928
7929
	* util/import_gcry.py: Sort cipher_files, to make build system
7930
	generation more deterministic.
7931
7932
2012-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
7933
7934
	* grub-core/disk/ieee1275/ofdisk.c (scan): Check function return value.
7935
	* grub-core/lib/ieee1275/datetime.c (grub_get_datetime): Likewise.
7936
	(grub_set_datetime): Likewise.
7937
7938
2012-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
7939
7940
	* grub-core/script/yylex.l: Ignore unused-function and sign-compare
7941
	warnings.
7942
7943
2012-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
7944
7945
	* grub-core/partmap/dvh.c (grub_dvh_is_valid): Add missing byteswap.
7946
7947
2012-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
7948
7949
	* grub-core/fs/xfs.c (grub_xfs_read_block): Make keys a const pointer.
7950
7951
2012-09-04  Colin Watson  <cjwatson@ubuntu.com>
7952
7953
	* Makefile.am (EXTRA_DIST): Add linguas.sh.  It's only strictly
7954
	required for checkouts from bzr, but it may be useful for users or
7955
	distributors wishing to update translations against a tarball
7956
	distribution, and it can be helpful for the tarball to be a superset
7957
	of what's in bzr.
7958
7959
2012-09-04  Colin Watson  <cjwatson@ubuntu.com>
7960
7961
	* Makefile.am (EXTRA_DIST): Add
7962
	grub-core/tests/boot/linux.init-mips.S,
7963
	grub-core/tests/boot/linux.init-ppc.S, and
7964
	grub-core/tests/boot/linux-ppc.cfg.
7965
7966
2012-09-04  Colin Watson  <cjwatson@ubuntu.com>
7967
7968
	* grub-core/mmap/mips/loongson: Remove empty directory.
7969
7970
2012-09-04  Colin Watson  <cjwatson@ubuntu.com>
7971
7972
	* docs/man/grub-mkdevicemap.h2m: Remove, since grub-mkdevicemap is
7973
	gone.
7974
7975
2012-09-04  Colin Watson  <cjwatson@ubuntu.com>
7976
7977
	* .bzrignore: Add grub-bios-setup, grub-ofpathname, and
7978
	grub-sparc64-setup.
7979
7980
2012-08-05  Grégoire Sutre  <gregoire.sutre@gmail.com>
7981
7982
	* configure.ac: Strengthen the test for working -nostdinc -isystem.
7983
7984
2012-07-31  Grégoire Sutre  <gregoire.sutre@gmail.com>
7985
7986
	* po/POTFILES.in: Regenerated.
7987
7988
2012-07-31  Grégoire Sutre  <gregoire.sutre@gmail.com>
7989
7990
	* docs/grub.texi: Note that NetBSD/i386 is Multiboot-compliant.
7991
	(NetBSD): New subsection.
7992
7993
2012-07-22  Ales Nesrsta  <starous@volny.cz>
7994
7995
	* grub-core/bus/usb/ehci.c: PCI iter. - added PCI bus master setting.
7996
	* grub-core/bus/usb/ohci.c: PCI iter. - added PCI bus master setting.
7997
7998
2012-07-22  Vladimir Serbinenko  <phcoder@gmail.com>
7999
8000
	* util/grub-mkconfig_lib.in (grub_quote): Remove extra layer of escape.
8001
	* util/grub.d/10_hurd.in: Add missing quoting.
8002
	* util/grub.d/10_illumos.in: Likewise.
8003
	* util/grub.d/10_kfreebsd.in: Likewise.
8004
	* util/grub.d/10_linux.in: Likewise.
8005
	* util/grub.d/20_linux_xen.in: Likewise.
8006
8007
2012-07-22  Vladimir Serbinenko  <phcoder@gmail.com>
8008
8009
	New command `lsefi'.
8010
8011
	* grub-core/Makefile.core.def (lsefi): New module.
8012
	* grub-core/commands/efi/lsefi.c: New file.
8013
	* include/grub/efi/api.h: Add more GUIDs.
8014
8015
2012-07-22  Vladimir Serbinenko  <phcoder@gmail.com>
8016
8017
	* grub-core/loader/i386/bsd.c (grub_bsd_elf32_size_hook): Fix mask.
8018
	(grub_bsd_elf32_hook): Likewise.
8019
	(grub_bsd_elf64_size_hook): Likewise.
8020
	(grub_bsd_elf64_hook): Likewise.
8021
	(grub_bsd_load_elf): Likewise.
8022
8023
2012-07-22  Vladimir Serbinenko  <phcoder@gmail.com>
8024
8025
	* grub-core/lib/xzembed/xz_dec_stream.c (hash_validate): Fix behaviour
8026
	if hash function is unavailable.
8027
	(dec_stream_header): Likewise.
8028
8029
2012-07-22  Vladimir Serbinenko  <phcoder@gmail.com>
8030
8031
	* grub-core/normal/autofs.c (autoload_fs_module): Save and restore
8032
	filter state.
8033
8034
2012-07-22  Vladimir Serbinenko  <phcoder@gmail.com>
8035
8036
	Fix coreboot compilation.
8037
8038
	* grub-core/term/i386/pc/vga_text.c (grub_vga_text_init): Rename to ...
8039
	(grub_vga_text_init_real): ... this.
8040
	(grub_vga_text_fini): Rename to ...
8041
	(grub_vga_text_fini_real): ... this.
8042
8043
2012-07-07  Vladimir Serbinenko  <phcoder@gmail.com>
8044
8045
	* grub-core/Makefile.am: Fix path to boot/i386/pc/startup_raw.S.
8046
8047
2012-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
8048
8049
	* grub-core/lib/legacy_parse.c: Support clear and testload.
8050
8051
2012-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
8052
8053
	* grub-core/term/efi/serial.c: Support 1.5 stop bits.
8054
8055
2012-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
8056
8057
	* grub-core/fs/ext2.c: Experimental support for 64-bit.
8058
8059
2012-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
8060
8061
	* grub-core/net/tftp.c (ack): Fix endianness problem.
8062
	(tftp_receive): Likewise.
8063
	Reported by: Michael Davidsaver.
8064
8065
2012-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
8066
8067
	* gentpl.py: Make mans depend on grub-mkconfig_lib.
8068
8069
2012-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
8070
8071
	* include/grub/list.h (FOR_LIST_ELEMENTS_SAFE): New macro.
8072
	* include/grub/command.h (FOR_COMMANDS_SAFE): Likewise.
8073
	* grub-core/commands/help.c (grub_cmd_help): Use FOR_COMMANDS_SAFE.
8074
8075
2012-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
8076
8077
	* grub-core/loader/i386/linux.c (find_efi_mmap_size): Don't decrease
8078
	efi_mmap_size.
8079
	Reported by: Stuart Hayes.
8080
8081
2012-06-28  Vladimir Serbinenko  <phcoder@gmail.com>
8082
8083
	Add monochrome text support (mda_text, aka `hercules' in grub-legacy).
8084
8085
	* grub-core/Makefile.core.def (mda_text): New module.
8086
	* grub-core/lib/legacy_parse.c (grub_legacy_parse): Support `hercules'.
8087
	* grub-core/term/i386/vga_common.c (grub_console_cur_color): Moved to ..
8088
	* grub-core/term/i386/pc/vga_text.c (cur_color): ... here
8089
	* grub-core/term/i386/pc/console.c (grub_console_cur_color): ... and
8090
	here.
8091
	* grub-core/term/i386/vga_common.c (grub_console_getwh): Moved to ..
8092
	* grub-core/term/i386/pc/vga_text.c (grub_console_getwh): ... here
8093
	* grub-core/term/i386/pc/console.c (grub_console_getwh): ... and
8094
	here.
8095
	* grub-core/term/i386/vga_common.c (grub_console_setcolorstate): Moved
8096
	to ..
8097
	* grub-core/term/i386/pc/vga_text.c (grub_console_setcolorstate):
8098
	... here
8099
	* grub-core/term/i386/pc/console.c (grub_console_setcolorstate): ... and
8100
	here.
8101
	* grub-core/term/i386/vga_common.c: Removed.
8102
	* include/grub/i386/vga_common.h: Likewise.
8103
	* include/grub/vga.h (grub_vga_cr_bw_write): New function.
8104
	(grub_vga_cr_bw_read): Likewise.
8105
	* include/grub/vgaregs.h (GRUB_VGA_IO_CR_BW_INDEX): New enum value.
8106
	(GRUB_VGA_IO_CR_BW_DATA): Likewise.
8107
	* grub-core/term/i386/pc/vga_text.c [MODE_MDA]: Call
8108
	grub_vga_cr_bw_read/grub_vga_cr_bw_write instead of
8109
	grub_vga_cr_read/grub_vga_cr_write.
8110
	(grub_vga_text_setcolorstate) [MODE_MDA]: Ignore color.
8111
1.15.16 by Colin Watson
Import upstream version 2.00
8112
2012-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
8113
8114
	* configure.ac: Bump version to 2.00.
8115
	* grub-core/normal/main.c (features): Add feature_200_final.
8116
8117
2012-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
8118
2012-06-27  Jordan Uggla  <jordan.uggla@gmail.com>
8119
8120
	* NEWS: Fix unclarity and language mistakes.
8121
8122
2012-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
8123
8124
	* grub-core/loader/i386/linux.c (find_efi_mmap_size): Increase
8125
	additional size to 3 pages.
8126
	Reported by: Stuart Hayes.
8127
8128
2012-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
8129
8130
	* NEWS: Add 2.00 entry.
8131
8132
2012-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
8133
8134
	* grub-core/commands/wildcard.c (check_file): Fix bad logic.
8135
	put explicit "/" for empty path.
8136
	(wildcard_expand): Improve dprintf.
8137
8138
2012-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
8139
8140
	* grub-core/fs/fshelp.c (grub_fshelp_find_file): Don't free oldnode if
8141
	it's equal to currnode. This can happen with "" symlink.
8142
8143
2012-06-27  Yves Blusseau <blusseau@zetam.org>
8144
8145
	* util/grub-mkconfig_lib.in: Fix print messages replacing builtin
8146
	echo shell command by printf command.
8147
8148
2012-06-26  Vladimir Serbinenko  <phcoder@gmail.com>
8149
8150
	* grub-core/term/arc/console.c (grub_console_init_output): Add one since
8151
	the value returned by firmware is the maximal position, not diumension.
8152
	(grub_terminfo_output_state): Use a more sane fallback.
8153
8154
2012-06-26  Vladimir Serbinenko  <phcoder@gmail.com>
8155
8156
	* grub-core/term/terminfo.c (print_terminfo): Print terminal dimensions.
8157
8158
2012-06-26  Vladimir Serbinenko  <phcoder@gmail.com>
8159
8160
	* grub-core/kern/mips/arc/init.c (grub_machine_init): Set clock
8161
	frequency to 150 MHz.
8162
8163
2012-06-26  Vladimir Serbinenko  <phcoder@gmail.com>
8164
8165
	Apple fixes.
8166
8167
	* grub-core/lib/i386/relocator16.S: Use correct __APPLE__ and not
8168
	__APPLE_
8169
	* grub-core/lib/i386/relocator_common.S [__APPLE__]: Fix gdtdesc
8170
	definition.
8171
	* grub-core/lib/i386/relocator64.S [__APPLE__]: Assemble jmp manually.
8172
8173
2012-06-26  Vladimir Serbinenko  <phcoder@gmail.com>
8174
8175
	Handle slash in HFS label.
8176
8177
	* grub-core/fs/hfs.c (macroman_to_utf8): New argument slash_translate.
8178
	(grub_hfs_dir): Tanslate slash.
8179
	(grub_hfs_label): Don't translate slash.
8180
8181
2012-06-26  Vladimir Serbinenko  <phcoder@gmail.com>
8182
8183
	* grub-core/commands/ls.c (grub_ls_list_devices): Disable
8184
	network protocol listing since it introduces problematic dependency on
8185
	net module.
8186
8187
2012-06-26  Vladimir Serbinenko  <phcoder@gmail.com>
8188
8189
	* util/grub-mkimage.c (generate_image): Add Yeeloong verified hash.
8190
8191
2012-06-26  Vladimir Serbinenko  <phcoder@gmail.com>
8192
8193
	Init video early on yeeloong to avoid being rebooted by watchdog.
8194
8195
	* grub-core/Makefile.am (gensm712): New target.
8196
	(sm712_start.S): Likewise.
8197
	(boot/mips/loongson/fwstart.S): Depend on sm712_start.S
8198
	* grub-core/boot/mips/loongson/fwstart.S [!FULOONG2F]: Init SM712.
8199
	* grub-core/video/sm712.c [GENINIT]: Generate compact init procedure
8200
	description.
8201
	* include/grub/vga.h: Move registry definitions to...
8202
	* include/grub/vgaregs.h: ... here.
8203
8204
2012-06-26  Vladimir Serbinenko  <phcoder@gmail.com>
8205
8206
	* grub-core/boot/decompressor/minilib.c (grub_memcmp): Fix the compare
8207
	signedness.
8208
8209
2012-06-25  Vladimir Serbinenko  <phcoder@gmail.com>
8210
8211
	* util/grub-install.in: Fix dvhtool invocation. Add arc to the list of
8212
	platforms with firmware disk drivers in the core.
8213
8214
2012-06-25  Vladimir Serbinenko  <phcoder@gmail.com>
8215
8216
	* grub-core/disk/diskfilter.c (scan_disk) [GRUB_UTIL]: Put more
8217
	informative verbose message.
8218
	(read_lv): Handle 64-bit segment size.
8219
8220
2012-06-25  Vladimir Serbinenko  <phcoder@gmail.com>
8221
8222
	* grub-core/disk/lvm.c (grub_lvm_getvalue): Handle 64-bit values.
8223
8224
2012-06-25  Vladimir Serbinenko  <phcoder@gmail.com>
8225
8226
	* grub-core/fs/fat.c (grub_fat_iterate_dir_next): Don't stop on a space
8227
	character but still remove trainling spaces.
8228
	(grub_fat_label): Ignore archive flag.
8229
8230
2012-06-25  Vladimir Serbinenko  <phcoder@gmail.com>
8231
8232
	* grub-core/loader/i386/linux.c (grub_cmd_initrd): Avoid unnecessarry
8233
	cast between linux_kernel_header and linux_kernel_params.
8234
8235
2012-06-25  Vladimir Serbinenko  <phcoder@gmail.com>
8236
8237
	* include/grub/diskfilter.h (grub_raid5_recover_func_t): Use proper
8238
	type for size.
8239
	(grub_raid6_recover_func_t): Likewise.
8240
	* grub-core/disk/raid5_recover.c (grub_raid5_recover): Likewise.
8241
	* grub-core/disk/raid6_recover.c (grub_raid6_recover): Likewise.
8242
8243
2012-06-25  Vladimir Serbinenko  <phcoder@gmail.com>
8244
8245
	* util/grub-mkimage.c (generate_image): Add Fuloong2F verified hash.
8246
8247
2012-06-25  Grégoire Sutre  <gregoire.sutre@gmail.com>
8248
8249
	Fix overflow.
8250
8251
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size)
8252
	[__NetBSD__]: Add explicit cast before bitshift.
8253
8254
2012-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
8255
8256
	* configure.ac: Bump to 2.00~rc1.
8257
8258
2012-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
8259
8260
	* grub-core/boot/mips/loongson/fwstart.S: Add missing setting of high
8261
	half of $a0.
8262
8263
2012-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
8264
2012-06-23  Jordan Uggla  <jordan.uggla@gmail.com>
8265
8266
	* docs/grub.texi: Fix search syntax.
8267
	(Multi-boot manual config): Put msdos rather than GPT example.
8268
	Grammar corrections.
8269
8270
2012-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
8271
8272
	* docs/grub.texi (Multi-boot manual config): Use --set. Improve remark.
8273
8274
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8275
8276
	* grub-core/kern/mm.c (grub_free): Fix agglomerating of free regions.
8277
8278
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8279
8280
	* grub-core/kern/mm.c (get_header_from_pointer): Put a more informative
8281
	message on double free. Put the value of magic in case of mismatch.
8282
8283
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8284
8285
	Speed-up video on yeeloong.
8286
8287
	* grub-core/video/sm712.c (framebuffer): Remove render_target and
8288
	add cached_ptr.
8289
	(grub_video_sm712_video_fini): Unmap cached_ptr.
8290
	(grub_video_sm712_setup): Use cache address and grub_video_fb_setup.
8291
	(grub_video_sm712_set_active_render_target): Removed.
8292
	(grub_video_adapter): Use grub_video_fb_set_active_render_target.
8293
	(grub_video_sm712_swap_buffers): Call grub_video_fb_swap_buffers and
8294
	sync caches.
8295
8296
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8297
8298
	Avoid flushing the same line multiple times on loongson.
8299
8300
	* grub-core/kern/mips/cache.S [GRUB_MACHINE_MIPS_LOONGSON]:
8301
	Step in 32 bytes and not 1 byte.
8302
	* grub-core/kern/mips/cache_flush.S [GRUB_MACHINE_MIPS_LOONGSON]:
8303
	Likewise.
8304
8305
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8306
8307
	* util/getroot.c (grub_find_root_devices_from_mountinfo): Handle btrfs
8308
	subvolumes.
8309
8310
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8311
8312
	Implement flow control for http.
8313
8314
	* grub-core/net/http.c (parse_line): Handle response 206.
8315
	(http_receive): Stall if too many packets are in the queue.
8316
	(http_establish): Fix range header.
8317
	(http_seek): Fix double free.
8318
	(http_close): Likewise.
8319
	(http_packets_pulled): New function.
8320
	(grub_http_protocol): Set http_seek
8321
	* grub-core/net/tcp.c (grub_net_tcp_socket): New field `i_stall'.
8322
	(ack_real): Set window depending on i_stall.
8323
	(grub_net_send_tcp_packet): Likewise.
8324
	(grub_net_tcp_stall): New function.
8325
	(grub_net_tcp_unstall): Likewise.
8326
	* include/grub/net/tcp.h (grub_net_tcp_stall): New proto.
8327
	(grub_net_tcp_unstall): Likewise.
8328
8329
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8330
8331
	* grub-core/net/tftp.c: Decrease stall to 50 packets.
8332
8333
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8334
8335
	* grub-core/net/net.c (grub_net_fs_open): Free resources on failed open.
8336
8337
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8338
8339
	* tests/util/grub-shell.in: Fix a typo.
8340
8341
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8342
8343
	Implement flow control for tftp.
8344
8345
	* grub-core/net/net.c (receive_packets): Decrease the stop to 10
8346
	packets but stop only if stop condition is satisfied.
8347
	(grub_net_fs_read_real): Call packets_pulled after real read. Use
8348
	`stall' instead of `eof' as stop condition.
8349
	* grub-core/net/http.c (parse_line): Set `stall' on EOF.
8350
	(http_err): Likewise.
8351
	* grub-core/net/tftp.c (ack): Replace the first argument with data
8352
	instead of socket.
8353
	(tftp_receive): Stall if too many packets are in wait queue.
8354
	(tftp_packets_pulled): New function.
8355
	(grub_tftp_protocol): Set packets_pulled.
8356
	* include/grub/net.h (grub_net_packets): New field count.
8357
	(grub_net_put_packet): Increment count.
8358
	(grub_net_remove_packet): Likewise.
8359
	(grub_net_app_protocol): New field `packets_pulled'.
8360
	(grub_net): New field `stall'.
8361
8362
2012-06-22  Vladimir Serbinenko  <phcoder@gmail.com>
8363
8364
	* grub-core/net/net.c (receive_packets): Stop after 100 packets to let
8365
	sync part to handle them.
8366
8367
2012-06-21  Vladimir Serbinenko  <phcoder@gmail.com>
8368
8369
	* grub-core/kern/main.c (grub_set_prefix_and_root): Fix memory leak.
8370
	* grub-core/net/drivers/ieee1275/ofnet.c
8371
	(grub_ieee1275_net_config_real): Likewise.
8372
8373
2012-06-21  Vladimir Serbinenko  <phcoder@gmail.com>
8374
8375
	* grub-core/net/bootp.c (grub_net_configure_by_dhcp_ack): Don't create
8376
	the direct route for server/gateway.
8377
8378
2012-06-21  Vladimir Serbinenko  <phcoder@gmail.com>
8379
8380
	* grub-core/net/bootp.c (grub_net_configure_by_dhcp_ack): Prefer
8381
	IP address to server name since we may not hame the DNS.
8382
8383
2012-06-21  Vladimir Serbinenko  <phcoder@gmail.com>
8384
8385
	* grub-core/net/dns.c (grub_cmd_nslookup): Init addresses to 0 to avoid
8386
	freeing random buffer on failure.
8387
	* grub-core/net/net.c (grub_net_resolve_address): Likewise.
8388
8389
2012-06-21  Vladimir Serbinenko  <phcoder@gmail.com>
8390
8391
	* grub-core/net/bootp.c (grub_cmd_bootp): Fix packet allocation size.
8392
8393
2012-06-21  Vladimir Serbinenko  <phcoder@gmail.com>
8394
8395
	* grub-core/net/drivers/emu/emunet.c (get_card_packet): Allocate the
8396
	reserved bytes.
8397
	* grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Likewise.
8398
	* grub-core/net/drivers/ieee1275/ofnet.c (get_card_packet): Likewise.
8399
	Handle malloc error correctly.
8400
8401
2012-06-21  Vladimir Serbinenko  <phcoder@gmail.com>
8402
8403
	* grub-core/script/execute.c (grub_script_arglist_to_argv): Escape
8404
	blocks.
8405
8406
2012-06-21  Vladimir Serbinenko  <phcoder@gmail.com>
8407
8408
	* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Fix double
8409
	increment.
8410
8411
2012-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
8412
8413
	* grub-core/net/dns.c (grub_cmd_nslookup): Use configured DNS servers if
8414
	none is explicitly specified.
8415
8416
2012-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
8417
8418
	* grub-core/net/dns.c (grub_net_add_dns_server): Don't erase old servers
8419
	while reallocating.
8420
8421
2012-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
8422
8423
	Respect netmask from bootp/dhcp.
8424
8425
	* grub-core/net/bootp.c (parse_dhcp_vendor): Parse mask.
8426
	(grub_net_configure_by_dhcp_ack): Use mask and grub_net_add_ipv4_local.
8427
	* grub-core/net/net.c (grub_net_add_addr): Split creating local route
8428
	into ...
8429
	(grub_net_add_ipv4_local): ... this.
8430
	(grub_cmd_addaddr): Use grub_net_add_ipv4_local.
8431
	* include/grub/net.h (GRUB_NET_BOOTP_NETMASK): New enum value.
8432
	(grub_net_add_ipv4_local): New proto.
8433
8434
2012-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
8435
8436
	* grub-core/loader/i386/linux.c (grub_linux_boot): Setup video before
8437
	determining EFI memory map size.
8438
8439
2012-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
8440
8441
	* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Escape commas.
8442
8443
2012-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
8444
8445
	* grub-core/kern/main.c (grub_set_prefix_and_root): Skip escaped commas
8446
	when looking for partition separator.
8447
8448
2012-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
8449
8450
	* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
8451
	Escape commas.
8452
8453
2012-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
8454
8455
	Restructure FAT driver to avoid hook in label reading as it hits a
8456
	GCC bug.
8457
8458
	* include/grub/err.h (grub_err_t): New enum value GRUB_ERR_EOF.
8459
	* grub-core/fs/fat.c (grub_fat_iterate_context): New struct.
8460
	(grub_fat_iterate_dir): Split into ...
8461
	(grub_fat_iterate_init): ... this, ...
8462
	(grub_fat_iterate_fini): ... this, ...
8463
	(grub_fat_iterate_dir_next): ... and this. All users updated.
8464
8465
2012-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
8466
8467
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
8468
	GRUB_IEEE1275_FLAG_BROKEN_REPEAT.
8469
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
8470
	GRUB_IEEE1275_FLAG_BROKEN_REPEAT on PowerBook3,3.
8471
	* include/grub/terminfo.h (grub_terminfo_input_state) [__powerpc__]:
8472
	New fields last_key and last_key_time.
8473
	* grub-core/term/terminfo.c (grub_terminfo_getkey): Transform
8474
	extended key-esc into extended key-extended key.
8475
8476
2012-06-19  Vladimir Serbinenko  <phcoder@gmail.com>
8477
8478
	Avoid unnecessary memcpy of whole video buffer.
8479
8480
	* grub-core/video/fb/video_fb.c (dirty): New struct.
8481
	(framebuffer): Add members current_dirty and previous_dirty.
8482
	(dirty): New function.
8483
	(grub_video_fb_fill_rect): Update dirty.
8484
	(common_blitter): Likewise.
8485
	(grub_video_fb_scroll): Likewise.
8486
	(doublebuf_blit_update_screen): Copy only dirty part.
8487
	(doublebuf_pageflipping_update_screen): Likewise.
8488
	(grub_video_fb_doublebuf_blit_init): Init dirty.
8489
	(doublebuf_pageflipping_init): Likewise.
8490
	(grub_video_fb_setup): Likewise.
8491
8492
2012-06-19  Vladimir Serbinenko  <phcoder@gmail.com>
8493
8494
	* grub-core/net/drivers/ieee1275/ofnet.c (search_net_devices): Decrease
8495
	poll rate.
8496
8497
2012-06-19  Vladimir Serbinenko  <phcoder@gmail.com>
8498
8499
	Fix wildcard regexp dot and other special characters handling.
8500
	Reported by: Robert Mabee.
8501
8502
	* grub-core/commands/wildcard.c (isregexop): Add "|+{}[]?".
8503
	(make_regex): Escape "|+{}[]". Transform '?' to '.?'.
8504
	(split_path): Trigger expansion on '?'.
8505
	(unescape): New function.
8506
	(wildcard_expand): Unescape parts copied without globbing.
8507
	* grub-core/script/execute.c (wildcard_escape): Escape '?'.
8508
	(grub_script_arglist_to_argv): Don't unescape expansions.
8509
8510
2012-06-19  Vladimir Serbinenko  <phcoder@gmail.com>
8511
8512
	* include/grub/net.h (grub_net_card): New member txbufsize.
8513
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum values
8514
	GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and
8515
	GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN.
8516
	* grub-core/net/drivers/efi/efinet.c (grub_efinet_findcards): Use
8517
	txbufsize.
8518
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Use
8519
	compatible property to check for macs. Set
8520
	GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and
8521
	GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN on macs.
8522
	* grub-core/net/drivers/ieee1275/ofnet.c (card_open): Don't add suffix
8523
	if GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX is set.
8524
	(send_card_buffer): Use txbuf.
8525
	(grub_ofnet_findcards): Allocate txbuf. Simplify code flow and move
8526
	nested function out of the parent while on it.
8527
8528
2012-06-19  Vladimir Serbinenko  <phcoder@gmail.com>
8529
8530
	* grub-core/net/drivers/ieee1275/ofnet.c (get_card_packet): Fix packet
8531
	presence check.
8532
	(grub_ieee1275_net_config_real): Fix config pointer.
8533
8534
2012-06-19  Vladimir Serbinenko  <phcoder@gmail.com>
8535
8536
	* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): Extend
8537
	filename parsing to non-block devices.
8538
8539
2012-06-19  Vladimir Serbinenko  <phcoder@gmail.com>
8540
8541
	* grub-core/kern/device.c (grub_device_open): Remove dead code.
8542
8543
2012-06-18  Vladimir Serbinenko  <phcoder@gmail.com>
8544
8545
	* include/grub/elf.h: Rename R_PPC to GRUB_R_PPC to avoid collisions.
8546
	All users updated.
8547
8548
2012-06-18  Vladimir Serbinenko  <phcoder@gmail.com>
8549
8550
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Generate
8551
	UUID search command even if hints probing failed.
8552
8553
2012-06-18  Vladimir Serbinenko  <phcoder@gmail.com>
8554
8555
	* po/POTFILES.in: Regenerated.
8556
8557
2012-06-17  Vladimir Serbinenko  <phcoder@gmail.com>
8558
8559
	Speed-up video on fuloong.
8560
8561
	* grub-core/bus/bonito.c (grub_pci_device_map_range_cached):
8562
	New function.
8563
	(grub_pci_device_unmap_range): Handle non-cached address.
8564
	* grub-core/video/sis315pro.c (framebuffer): Remove render_target and
8565
	add direct_ptr.
8566
	(grub_video_sis315pro_video_fini): Unmap direct_ptr.
8567
	(grub_video_sis315pro_setup): Use cache address and grub_video_fb_setup.
8568
	(grub_video_sis315pro_set_active_render_target): Removed.
8569
	(grub_video_sis315pro_get_info_and_fini): Use uncached address.
8570
	(grub_video_adapter): Use grub_video_fb_set_active_render_target.
8571
	(grub_video_sis315pro_swap_buffers): Call grub_video_fb_swap_buffers and
8572
	sync caches.
8573
	* include/grub/mips/loongson/pci.h (grub_pci_device_map_range_cached):
8574
	New proto.
8575
8576
2012-06-16  Vladimir Serbinenko  <phcoder@gmail.com>
8577
8578
	* docs/grub.texi (Multi-boot manual config): New section.
8579
8580
2012-06-15  Vladimir Serbinenko  <phcoder@gmail.com>
8581
8582
	Avoid slow read-back from VRAM.
8583
8584
	* include/grub/video_fb.h (grub_video_fb_doublebuf_update_screen_t):
8585
	Move from here ...
8586
	* grub-core/video/fb/video_fb.c
8587
	(grub_video_fb_doublebuf_update_screen_t): ... here. Remove arguments.
8588
	* grub-core/video/fb/video_fb.c (framebuf_t): New type.
8589
	(front_target): Remove front_target. Add pages.
8590
	(grub_video_fb_init): Skip setting front_pages.
8591
	(grub_video_fb_fini): Likewise.
8592
	(doublebuf_blit_update_screen): Use pages.
8593
	(grub_video_fb_doublebuf_blit_init): Likewise.
8594
	(doublebuf_pageflipping_init): Allocate offscreen buffer.
8595
	(doublebuf_pageflipping_update_screen): Use offscreen buffer.
8596
	(grub_video_fb_setup): Prefer doublebuffing.
8597
8598
2012-06-15  Vladimir Serbinenko  <phcoder@gmail.com>
8599
8600
	* grub-core/normal/main.c (GRUB_MOD_INIT): Ignore errors when loading
8601
	gzio.
8602
8603
2012-06-15  Vladimir Serbinenko  <phcoder@gmail.com>
8604
8605
	Add loongson tests.
8606
8607
	* tests/util/grub-shell.in: Handle loongson.
8608
	* tests/partmap_test.in: Add loongson to the list of platform using ATA
8609
	drivers.
8610
	* grub-core/tests/boot/linux.init-mips.S (SHUTDOWN_MAGIC3) [REBOOT]:
8611
	Reboot instead of shutdown if REBOOT is defined.
8612
8613
2012-06-15  Vladimir Serbinenko  <phcoder@gmail.com>
8614
8615
	* grub-core/lib/mips/loongson/reboot.c (grub_reboot): Use 32-bit
8616
	sized ports since unlike on real hardware qemu supports only 32-bit
8617
	regs.
8618
8619
2012-06-15  Vladimir Serbinenko  <phcoder@gmail.com>
8620
8621
	* Makefile.util.def (grub-mkrescue): Enable on loongson.
8622
	* util/grub-mkrescue.in: Handle loongson.
8623
8624
2012-06-14  Vladimir Serbinenko  <phcoder@gmail.com>
8625
8626
	* util/getroot.c (convert_system_partition_to_system_disk) [__APPLE__]:
8627
	Set is_part appropriately.
8628
	(grub_util_biosdisk_get_grub_dev): Use is_part rather than comparing
8629
	names. Canonicalize partition without full disk.
8630
8631
2012-06-13  Vladimir Serbinenko  <phcoder@gmail.com>
8632
8633
	Revert usb-quiesce since it's wrong.
8634
8635
	* grub-core/disk/ieee1275/ofdisk.c (quiesce): Removed.
8636
	(grub_ofdisk_init): Don't do quiesce.
8637
8638
2012-06-13  Vladimir Serbinenko  <phcoder@gmail.com>
8639
8640
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Apply
8641
	PowerMac workaround to Xserves as well.
8642
	Information supplied by: Benjamin Herrenschmidt.
8643
8644
2012-06-13  Vladimir Serbinenko  <phcoder@gmail.com>
8645
8646
	Don't assume that beginning address is also the entry point on ppc.
8647
8648
	* grub-core/loader/powerpc/ieee1275/linux.c (linux_entry): New variable.
8649
	(grub_linux_boot): Use linux_entry.
8650
	(grub_linux_load32): Fill linux_entry. Fix setting linux_addr.
8651
	(grub_linux_load64): Likewise.
8652
8653
2012-06-13  Vladimir Serbinenko  <phcoder@gmail.com>
8654
8655
	* util/grub-install.in: Fix cross-disk check on non-PreP machines.
8656
8657
2012-06-13  Vladimir Serbinenko  <phcoder@gmail.com>
8658
8659
	* grub-core/term/ieee1275/console.c (grub_console_fini): Don't
8660
	needlessly lose the console.
8661
8662
2012-06-13  Vladimir Serbinenko  <phcoder@gmail.com>
8663
8664
	* grub-core/normal/dyncmd.c (read_command_list): Don't access freed
8665
	space.
8666
8667
2012-06-11  Vladimir Serbinenko  <phcoder@gmail.com>
8668
8669
	Remove non-functional EFI grub_get_rtc. Put a better fatal message
8670
	than current grub_get_rtc() not implemented when booted with
8671
	coreboot without TSC.
8672
8673
	* grub-core/Makefile.am: Exclude efi/time.h from kernel headers.
8674
	Add machine/time.h to kernel headers on loongson.
8675
	* grub-core/Makefile.core.def (kernel): Remove
8676
	kern/generic/rtc_get_time_ms.c on qemu-multiboot-coreboot.
8677
	* grub-core/kern/efi/efi.c (grub_rtc_get_time_ms): Removed.
8678
	(grub_get_rtc): Likewise.
8679
	* grub-core/kern/generic/rtc_get_time_ms.c: Include grub/machine/time.h.
8680
	* grub-core/kern/i386/coreboot/init.c (grub_get_rtc): Removed.
8681
	* grub-core/kern/i386/pc/init.c: Include grub/machine/init.h.
8682
	* grub-core/kern/i386/tsc.c (grub_tsc_init)
8683
	[!GRUB_MACHINE_PCBIOS && !GRUB_MACHINE_IEEE1275]: Call grub_fatal
8684
	rather than installing known non-working time source.
8685
	* grub-core/kern/ieee1275/init.c (grub_get_rtc): Removed.
8686
	* grub-core/kern/mips/loongson/init.c: Include grub/machine/time.h.
8687
	* include/grub/time.h: Don't include machine/time.h.
8688
	* include/grub/efi/time.h: Removed.
8689
	* include/grub/i386/efi/time.h: Likewise.
8690
	* include/grub/i386/ieee1275/time.h: Likewise.
8691
	* include/grub/powerpc/ieee1275/time.h: Likewise.
8692
	* include/grub/sparc64/ieee1275/time.h: Likewise.
8693
	* include/grub/x86_64/efi/time.h: Likewise.
8694
8695
2012-06-11  Vladimir Serbinenko  <phcoder@gmail.com>
8696
8697
	Remove dot on i and j when combining with above diacritics.
8698
8699
	* include/grub/unicode.h (GRUB_UNICODE_DOTLESS_LOWERCASE_I): New enum
8700
	value.
8701
	(GRUB_UNICODE_DOTLESS_LOWERCASE_J): Likewise.
8702
	* grub-core/font/font.c (grub_font_construct_dry_run): Replace i and j
8703
	with dotless variants when any combining above is present.
8704
8705
2012-06-09  Vladimir Serbinenko  <phcoder@gmail.com>
8706
8707
	* tests/grub_script_expansion.in: Explicitly tell grep that we handle
8708
	text and not binary.
8709
8710
2012-06-09  Vladimir Serbinenko  <phcoder@gmail.com>
8711
8712
	Stop polling as soon as we have the packet we were waiting for.
8713
8714
	* include/grub/net.h (grub_net_poll_cards): New argument stop_condition.
8715
	All users updated.
8716
	* grub-core/net/arp.c (have_pending): New var.
8717
	(pending_req): Likewise.
8718
	(grub_net_arp_send_request): Fill pending_req and use have_pending as
8719
	stop indicator.
8720
	(grub_net_arp_receive): Set have_pending.
8721
	* grub-core/net/dns.c (recv_data): New field stop.
8722
	(recv_hook): Set stop.
8723
	(grub_net_dns_lookup): Init stop and use as stop condition.
8724
	* grub-core/net/http.c (http_establish): Use headers_recv as stop
8725
	condition.
8726
	* grub-core/net/net.c (grub_net_poll_cards): New argument
8727
	stop_condition. Stop when it goes true.
8728
	* grub-core/net/tcp.c (grub_net_tcp_open): Use `established' as stop
8729
	indicator.
8730
	* grub-core/net/tftp.c (tftp_open): Use `have_oack' as stop indicator.
8731
8732
2012-06-09  Vladimir Serbinenko  <phcoder@gmail.com>
8733
8734
	Keep TX and RX buffers on EFI rather than always allocate new ones.
8735
8736
	* include/grub/net.h (grub_net_card_driver): Allow driver to modify
8737
	card. All users updated.
8738
	(grub_net_card): New members txbuf, rcvbuf, rcvbufsize and txbusy.
8739
	* grub-core/net/drivers/efi/efinet.c (send_card_buffer): Reuse buffer.
8740
	(get_card_packet): Likewise.
8741
	(grub_efinet_findcards): Init new fields.
8742
8743
2012-06-09  Vladimir Serbinenko  <phcoder@gmail.com>
8744
8745
	* grub-core/term/ieee1275/serial.c (do_real_config): Fix cast to fix
8746
	compilation error on sparc64.
8747
8748
2012-06-09  Vladimir Serbinenko  <phcoder@gmail.com>
8749
8750
	Use ITC on IA64 rather than broken routine based on daytime.
8751
8752
	* grub-core/kern/efi/efi.c (grub_rtc_get_time_ms) [__ia64__]: Remove on
8753
	ia64.
8754
	(grub_get_rtc) [__ia64__]: Likewise.
8755
	* grub-core/kern/ia64/efi/init.c (divisor): New variable.
8756
	(get_itc): New function.
8757
	(grub_rtc_get_time_ms): Likewise.
8758
	(grub_machine_init): Calibrate ITC.
8759
	* include/grub/efi/time.h (grub_get_rtc), (GRUB_TICKS_PER_SECOND):
8760
	Keep only on non-ia64. Don't export since it's broken and used only
8761
	if TSC is unavailable.
8762
8763
2012-06-09  Vladimir Serbinenko  <phcoder@gmail.com>
8764
8765
	* grub-core/disk/efi/efidisk.c (find_parent_device): Return the parent
8766
	even if it's used.
8767
	(name_devices): Replace #if 0 with #ifdef DEBUG_NAMES.
8768
	Skip if parent is unused.
8769
8770
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8771
8772
	* tests/partmap_test.in: Skip on ppc due to serious firmware bug.
8773
8774
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8775
8776
	Fix wildcard escaping.
8777
8778
	* grub-core/commands/wildcard.c (wildcard_escape): Moved from here ...
8779
	* grub-core/script/execute.c (wildcard_escape): .. to here.
8780
	Don't escape dot.
8781
	* grub-core/commands/wildcard.c (wildcard_unescape): Moved from here ...
8782
	* grub-core/script/execute.c (wildcard_unescape): .. to here.
8783
	Don't escape dot.
8784
	* grub-core/script/execute.c (gettext_append): Always escape.
8785
	(grub_script_arglist_to_argv): Always handle escaping/unescaping.
8786
	* grub-core/script/yylex.l: Don't cut away the escaping.
8787
	* tests/grub_script_echo1.in: Add tests with wildcard.
8788
8789
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8790
8791
	* grub-core/bus/usb/serial/ftdi.c (real_config): Handle 1.5 stop bits.
8792
	(ftdi_hw_configure): Likewise.
8793
	* grub-core/bus/usb/serial/pl2303.c (GRUB_PL2303_STOP_BITS_1_5): New
8794
	define.
8795
	(real_config): Handle 1.5 stop bits.
8796
	(pl2303_hw_configure): Likewise.
8797
8798
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8799
8800
	* Makefile.am: Add ppc linux bootcheck.
8801
	* grub-core/tests/boot/linux-ppc.cfg: New file.
8802
	* grub-core/tests/boot/linux.init-ppc.S: Likewise.
8803
8804
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8805
8806
	* tests/grub_script_expansion.in: Skip network protocols.
8807
8808
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8809
8810
	* tests/util/grub-shell.in: Use escc-ch-a port on ppc.
8811
8812
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8813
8814
	* util/powerpc/ieee1275/grub-mkrescue.in: Handle (and ignore)
8815
	--rom-directory.
8816
	Add -graft-points.
8817
8818
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8819
8820
	ESCC serial driver for conducting sautomated tests in qemu.
8821
	Not tested on real hardware.
8822
8823
	* include/grub/serial.h (grub_serial_port): New field escc_desc.
8824
	* grub-core/term/ieee1275/escc.c: New file.
8825
	* grub-core/Makefile.core.def (escc): New module.
8826
8827
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8828
8829
	* grub-core/term/ieee1275/serial.c (do_real_config): Set handle to
8830
	invalid on error.
8831
	(serial_hw_fetch): Don't read invalid handle.
8832
	(serial_hw_put): Don't write into invalid handle.
8833
8834
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8835
8836
	Add a 1.5 stop bits value.
8837
8838
	* grub-core/term/serial.c (grub_cmd_serial): Handle 1.5.
8839
	* include/grub/serial.h (grub_serial_stop_bits_t): Add
8840
	GRUB_SERIAL_STOP_BITS_1_5.
8841
8842
2012-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
8843
8844
	* grub-core/commands/wildcard.c (wildcard_expand): Set default return
8845
	value rather than let it uninited.
8846
8847
2012-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
8848
8849
	* grub-core/commands/wildcard.c (+check_file): New function.
8850
	(wildcard_expand): Don't expand to non-existing files, expand with
8851
	suffix and not attempt to expand if not needed.
8852
8853
2012-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
8854
8855
	* grub-core/disk/efi/efidisk.c (name_devices): Don't make disks
8856
	out of partitions containing other partitions.
8857
8858
2012-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
8859
8860
	Pass PCIINFO on BIOS to OpenBSD since otherwise it fails to boot
8861
	on some qemu versions with GRUB.
8862
8863
	* include/grub/i386/openbsd_bootarg.h (OPENBSD_BOOTARG_PCIBIOS): New
8864
	define.
8865
	(grub_openbsd_bootarg_pcibios): New struct.
8866
	* grub-core/loader/i386/bsd.c (grub_openbsd_boot) [GRUB_MACHINE_PCBIOS]:
8867
	Add PCIINFO.
8868
8869
2012-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
8870
8871
	* tests/util/grub-shell.in: Trim firmware output on EFI.
8872
8873
2012-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
8874
8875
	* grub-core/Makefile.core.def (vga_text): Disable on muliboot
8876
	and coreboot since it's already in kernel.
8877
8878
2012-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
8879
8880
	* util/getroot.c (grub_util_get_dm_node_linear_info): Moved from here...
8881
	* grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
8882
	to here. New return value start. All users updated.
8883
	Recursively scan linear mappings.
8884
	* include/grub/emu/hostdisk.h (grub_util_get_dm_node_linear_info): New
8885
	proto.
8886
	* grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start):
8887
	Use grub_util_get_dm_node_linear_info.
8888
	* util/getroot.c (convert_system_partition_to_system_disk): Use
8889
	grub_util_info rather than grub_dprintf.
8890
	(grub_util_biosdisk_get_grub_dev): Add a new grub_util_info.
8891
8892
2012-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
8893
8894
	Move handling of GRUB_QEMU_OPTS to grub-shell so that make check works.
8895
8896
	* Makefile.am: Remove GRUB_QEMU_OPTS handling.
8897
	* tests/util/grub-shell.in: Add GRUB_QEMU_OPTS handling.
8898
8899
2012-06-07  Vladimir Serbinenko  <phcoder@gmail.com>
8900
8901
	* include/grub/types.h (grub_set_unaligned64): New function.
8902
	* util/grub-setup.c (write_rootdev): Use unaligned access functions.
8903
	(setup): Likewise.
8904
8905
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8906
8907
	* grub-core/disk/ieee1275/ofdisk.c (quiesce): New function.
8908
	(grub_ofdisk_fini): Quiesce USB devices.
8909
8910
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8911
8912
	* grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_boot): Sync
8913
	caches.
8914
8915
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8916
8917
	* util/grub-fstest.c (cmd_crc): Use grub_get_unaligned32 for safety.
8918
8919
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8920
8921
	* grub-core/disk/pata.c (grub_pata_pio_read)
8922
	[GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't byteswap even on mipseb.
8923
	(grub_pata_pio_write) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Likewise.
8924
8925
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8926
8927
	Extend automated tests to qemu-mips.
8928
8929
	* Makefile.am: reorganise tests and enable qemu-mips.
8930
	* configure.ac (COND_mipseb), (COND_mipsel): New conditions.
8931
	* grub-core/tests/boot/linux.init-mips.S: New file.
8932
	* tests/partmap_test.in: Handle ata0 disks.
8933
	* tests/util/grub-shell.in: Handle qemu-mips. Make defaults work on
8934
	non-pc i386.
8935
8936
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8937
8938
	* Makefile.util.def (grub-mkrescue) Anable on mips_qemu_mips and
8939
	ia64.
8940
	* util/grub-mkrescue.in: Handle qemu-mips and ia64. Add missing
8941
	quotes while on it.
8942
8943
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8944
8945
	* grub-core/kern/mips/qemu_mips/init.c (grub_exit): Implement.
8946
	(grub_halt): Likewise.
8947
	* grub-core/lib/mips/qemu_mips/reboot.c (grub_reboot): Likewise.
8948
8949
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8950
8951
	* grub-core/term/serial.c (grub_serial_register)
8952
	[GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't autostart console in order to bring
8953
	the behaviour in line with x86 platforms.
8954
8955
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8956
8957
	* grub-core/commands/hdparm.c (le16_to_char): Always byte-swap strings.
8958
	(grub_ata_strncpy): Likewise.
8959
	(grub_ata_identify): Add missing byteswaps.
8960
8961
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8962
8963
	* grub-core/term/i386/pc/vga_text.c (screen_write_char): Add missing
8964
	byte-swap.
8965
	(screen_read_char): Likewise.
8966
	(grub_vga_text_cls): Likewise.
8967
8968
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8969
8970
	* grub-core/loader/efi/chainloader.c (copy_file_path): Handle non-ASCII
8971
	filenames.
8972
	(make_file_path): Likewise.
8973
8974
2012-06-06  Vladimir Serbinenko  <phcoder@gmail.com>
8975
8976
	* grub-core/disk/ieee1275/ofdisk.c (scan): Support vscsi on IBM
8977
	machines.
8978
	Tested by: Paulo Flabiano Smorigo.
8979
	Crucial information about API supplied by: Coleen <Last name unknown>.
8980
	Reviewed by: Coleen <Last name unknown>.
8981
8982
2012-06-05  Vladimir Serbinenko  <phcoder@gmail.com>
8983
8984
	* util/grub-mkimage.c: Disable -Wcast-align.
8985
8986
2012-06-05  Vladimir Serbinenko  <phcoder@gmail.com>
8987
8988
	* grub-core/genmod.sh.in: Enable objconv errors 2030, 2050 and 2031
8989
	as they are fatal.
8990
8991
2012-06-05  Vladimir Serbinenko  <phcoder@gmail.com>
8992
8993
	* grub-core/Makefile.am (rs_decoder.S): Add missing -ffreestanding.
8994
8995
2012-06-05  Vladimir Serbinenko  <phcoder@gmail.com>
8996
8997
	* util/grub-probe.c (escape_of_path): Fix double free.
8998
8999
2012-06-05  Vladimir Serbinenko  <phcoder@gmail.com>
9000
9001
	* grub-core/commands/videoinfo.c (hook): Show pitch.
9002
9003
2012-06-05  Vladimir Serbinenko  <phcoder@gmail.com>
9004
9005
	* util/grub.d/20_linux_xen.in: Skip xen-syms.
9006
9007
2012-06-05  Vladimir Serbinenko  <phcoder@gmail.com>
9008
9009
	* util/grub-probe.c (escape_of_path): Don't add ieee1275/.
9010
	(probe): Add ieee1275 to OFW devices.
9011
9012
2012-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
9013
9014
	* util/ieee1275/ofpath.c (of_path_of_scsi): Fix wrong format specifier.
9015
9016
2012-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
9017
9018
	Handle IBM OFW path.
9019
9020
	* util/ieee1275/ofpath.c (find_obppath): Use devspec if obppath isn't
9021
	available.
9022
	(of_path_of_scsi): Handle vdevice.
9023
9024
2012-06-03  Vladimir Serbinenko  <phcoder@gmail.com>
9025
9026
	* grub-core/mmap/i386/pc/mmap.c (malloc_hook):
9027
	Allocate in multiples of 16 to avoid adding a few bytes free region the
9028
	windows bugs upon.
9029
9030
2012-06-03  Vladimir Serbinenko  <phcoder@gmail.com>
9031
9032
	* grub-core/commands/i386/pc/drivemap.c (install_int13_handler):
9033
	Allocate in multiples of 16 to avoid adding a few bytes free region the
9034
	windows bugs upon.
9035
	* grub-core/mmap/i386/pc/mmap.c (malloc_hook): Likewise.
9036
9037
2012-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
9038
9039
	* grub-core/video/efi_gop.c (grub_video_gop_setup): Reject invalid
9040
	resolutions.
9041
	* grub-core/video/i386/pc/vbe.c (grub_vbe_get_preferred_mode): Likewise.
9042
	* grub-core/video/video.c (grub_video_edid_preferred_mode): Likewise.
9043
9044
2012-06-02  Isao Shimizu  <isaoshimizu@gmail.com>
9045
9046
	* util/ieee1275/ofpath.c (check_sas): Fix sas path.
9047
9048
2012-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
9049
9050
	* grub-core/normal/menu_entry.c (print_line): Fix off-by-one error which
9051
	resulted in \\ at the end of the line.
9052
9053
2012-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
9054
9055
	* grub-core/kern/parser.c (grub_parser_state_transitions): Handle \t.
9056
	(grub_parser_cmdline_state): Likewise.
9057
	(grub_parser_split_cmdline): Likewise.
9058
9059
2012-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
9060
9061
	* util/getroot.c (grub_guess_root_devices): Don't canonicalise
9062
	/dev/root and /dev/dm-*.
9063
9064
2012-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
9065
9066
	* grub-core/normal/menu_entry.c (update_screen): Fix loop condition to
9067
	fix partially stale display.
9068
9069
2012-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
9070
9071
	* grub-core/normal/menu_entry.c (backward_char): Use right line for
9072
	substraction.
9073
9074
2012-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
9075
9076
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write) [__linux__]:
9077
	Fix MBR remapping workaround.
9078
	(grub_util_biosdisk_read) [__linux__]: Likewise.
9079
9080
2012-06-01  Vladimir Serbinenko  <phcoder@gmail.com>
9081
9082
	* util/grub-install.in: Check for ieee1275 and not ieee1276.
9083
9084
2012-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
9085
9086
	* configure.ac: Bump to beta6.
9087
9088
2012-05-31  Christer Weinigel <christer@weinigel.se>
9089
9090
	* grub-core/normal/main.c (grub_file_getline): Fix off-by-one error.
9091
9092
2012-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
9093
9094
	* grub-core/loader/i386/linux.c (grub_linux_boot): Use right version.
9095
	(grub_cmd_linux): Likewise.
9096
9097
2012-05-31  Christer Weinigel <christer@weinigel.se>
9098
9099
	Fix EHCI low-speed.
9100
9101
	* grub-core/bus/usb/ehci.c (GRUB_EHCI_MULT_ONE): Fix the value.
9102
	(GRUB_EHCI_MULT_TWO): Likewise.
9103
	(GRUB_EHCI_MULT_THREE): Likewise.
9104
	(GRUB_EHCI_CMASK_MASK): New enum value.
9105
	(GRUB_EHCI_SMASK_MASK): Likewise.
9106
	(GRUB_EHCI_CMASK_OFF): Likewise.
9107
	(GRUB_EHCI_SMASK_OFF): Likewise.
9108
	(grub_ehci_pci_iter): Enable periodic schedule.
9109
	(grub_ehci_parse_notrun): Likewise.
9110
	(grub_ehci_restore_hw): Likewise.
9111
	(grub_ehci_setup_qh): Set flags for low speed transfers.
9112
	(grub_ehci_find_qh): Use periodic list for low speed.
9113
	(grub_ehci_setup_transfer): Check periodic queue as well.
9114
	(grub_ehci_check_transfer): Likewise.
9115
	(grub_ehci_cancel_transfer): Cancel periodic transfer.
9116
9117
2012-05-31  Paulo Flabiano Smorigo  <pfsmorigo@br.ibm.com>
9118
9119
	* util/grub-install.in: Write core.elf in PReP even if the --no-nvram
9120
	parameter is used.
9121
9122
2012-05-31  Peter Jones <pjones@redhat.com>
9123
9124
	* include/grub/i386/linux.h (linux_kernel_params): Add v206.
9125
	* grub-core/loader/i386/linux.c (grub_linux_boot): Use v206.
9126
	(grub_cmd_linux) [__x86_64__]: Validate grub_efi_system_table.
9127
9128
2012-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
9129
9130
	* grub-core/loader/i386/linux.c (grub_linux_boot): Fix overflow and
9131
	uninited variable. Allocate at least setup_sects.
9132
9133
2012-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
9134
9135
	Fix handling of EFI with big memory maps.
9136
9137
	* grub-core/loader/i386/linux.c (GRUB_LINUX_CL_OFFSET): Removed.
9138
	(real_mode_mem): Likewise.
9139
	(real_mode_target): Likewise.
9140
	(real_mode_pages): Likewise.
9141
	(prot_mode_pages): Likewise.
9142
	(linux_params): New var.
9143
	(linux_cmdline): Likewise.
9144
	(free_pages): Don't set real mode variables.
9145
	(allocate_pages): Don't allocate real mode memory.
9146
	(grub_e820_add_region): Remove the limit.
9147
	(grub_linux_boot): Allocate and copy real mode memory.
9148
	(grub_linux_unload): Free linux_cmdline.
9149
	(grub_cmd_linux): Use temporary storage for parameters.
9150
	(grub_cmd_initrd): Likewise.
9151
	* include/grub/i386/linux.h (GRUB_E820_MAX_ENTRY): Removed.
9152
	(linux_kernel_params): Make it 1K big.
9153
9154
2012-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
9155
9156
	* Makefile.util.def: Remove -Wno-format.
9157
	* grub-core/Makefile.core.def: Likewise.
9158
9159
2012-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
9160
9161
	* tests/cmp_unit_test.c: Add missing failure message.
9162
	* tests/example_unit_test.c: Likewise.
9163
	* tests/printf_unit_test.c: Likewise.
9164
9165
2012-05-30  Vladimir Serbinenko  <phcoder@gmail.com>
9166
9167
	* grub-core/commands/gptsync.c (grub_cmd_gptsync): Propagate the
9168
	relaxation of protective MBR requirements.
9169
9170
2012-05-29  Vladimir Serbinenko  <phcoder@gmail.com>
9171
9172
	* configure.ac: Add condition for COND_HOST_XNU.
9173
	* Makefile.util.def (10_xnu): New script.
9174
	* util/grub.d/10_xnu.in: New file, extracted from 30_os_prober.in.
9175
9176
2012-05-29  Vladimir Serbinenko  <phcoder@gmail.com>
9177
9178
	* grub-core/kern/i386/pc/startup.S [__APPLE__]: Add a workaround for
9179
	objconv bug.
9180
9181
2012-05-29  Vladimir Serbinenko  <phcoder@gmail.com>
9182
9183
	* grub-core/gdb/i386/machdep.S: Make usable with Apple assembler.
9184
	Binary on other platforms stays identical.
9185
9186
2012-05-28  Vladimir Serbinenko  <phcoder@gmail.com>
9187
9188
	* configure.ac: Remove APPLE_CC and add -Wl,-allow_stack_execute on
9189
	Apple.
9190
9191
2012-05-28  Vladimir Serbinenko  <phcoder@gmail.com>
9192
9193
	* gentpl.py: Ignore error 2022 in objconv since it's irrelevant for us.
9194
9195
2012-05-28  Vladimir Serbinenko  <phcoder@gmail.com>
9196
9197
	* grub-core/lib/posix_wrap/sys/types.h [__APPLE__]: Include stddef
9198
	rather than defining size_t ourselves to avoid conflict.
9199
9200
2012-05-28  Vladimir Serbinenko  <phcoder@gmail.com>
9201
9202
	* grub-core/fs/hfs.c (grub_hfs_dir): Use memset instead of
9203
	initialisation to avoid __bzero reference.
9204
9205
2012-05-28  Vladimir Serbinenko  <phcoder@gmail.com>
9206
9207
	* grub-core/boot/i386/pc/startup_raw.S [__APPLE__]: Add Apple assembly
9208
	version.
9209
	* grub-core/commands/i386/pc/drivemap_int13h.S [__APPLE__]: Likewise.
9210
	* grub-core/kern/i386/pc/startup.S [__APPLE__]: Likewise.
9211
	* grub-core/lib/i386/relocator16.S [__APPLE__]: Likewise.
9212
	* grub-core/lib/i386/relocator_common.S [__APPLE__]: Likewise.
9213
	* grub-core/mmap/i386/pc/mmap_helper.S [__APPLE__]: Likewise.
9214
9215
2012-05-28  Vladimir Serbinenko  <phcoder@gmail.com>
9216
9217
	* grub-core/efiemu/runtime/efiemu.c: Replace APPLE_CC with __APPLE__.
9218
	* grub-core/kern/misc.c: Likewise.
9219
	* grub-core/loader/i386/xnu.c: Likewise.
9220
	* include/grub/i386/tsc.h: Likewise.
9221
	* include/grub/symbol.h: Likewise.
9222
9223
2012-05-28  Vladimir Serbinenko  <phcoder@gmail.com>
9224
9225
	* include/grub/list.h (grub_bad_type_cast_real): Remove return.
9226
	* include/grub/misc.h (ATTRIBUTE_ERROR): Make into noreturn attribute
9227
	on older compiler.
9228
9229
2012-05-28  Vladimir Serbinenko  <phcoder@gmail.com>
9230
9231
	* util/getroot.c (grub_util_biosdisk_get_grub_dev) [__APPLE__]:
9232
	Implement Apple flavour.
9233
	(convert_system_partition_to_system_disk) [__APPLE__]: Likewise.
9234
9235
2012-05-28  Vladimir Serbinenko  <phcoder@gmail.com>
9236
9237
	* include/grub/misc.h (memcmp) [__APPLE__]: Mark as regparm 0.
9238
	(memmove) [__APPLE__]: Likewise.
9239
	(memcpy) [__APPLE__]: Likewise.
9240
	(memset) [__APPLE__]: Likewise.
9241
	* grub-core/kern/misc.c (memcmp) [__APPLE__]: Likewise.
9242
	(memmove) [__APPLE__]: Likewise.
9243
	(memcpy) [__APPLE__]: Likewise.
9244
	(memset) [__APPLE__]: Likewise.
9245
9246
2012-05-28  Vladimir Serbinenko  <phcoder@gmail.com>
9247
9248
	* grub-core/genmod.sh.in: Fix a bug in Apple part which caused
9249
	dependency discard.
9250
9251
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9252
9253
	* grub-core/normal/main.c (read_config_file): Provide config_file and
9254
	config_directory.
9255
	* util/grub.d/41_custom.in: Use config_directoy when available.
9256
9257
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9258
9259
	* grub-core/fs/bfs.c (iterate_in_b_tree): Add missing NESTED_FUNC_ATTR.
9260
	(grub_bfs_dir): Likewise.
9261
9262
2012-05-27  Peter Jones <pjones@redhat.com>
9263
9264
	The old code gives arguments to a printf function which can't work
9265
	correctly, and the compiler complains.
9266
9267
	* grub-core/tests/example_functional_test.c (example_test): Add
9268
	missing text.
9269
	* grub-core/tests/lib/test.c (add_failure): Rewrite.
9270
	* include/grub/test.h (grub_test_assert_helper): New declaration.
9271
	(grub_test_assert): Use grub_test_assert_helper.
9272
9273
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9274
9275
	* grub-core/Makefile.core.def (example_functional_test): Rename to ...
9276
	(exfctest): ... this to avoid overlong filenames.
9277
	All users updated.
9278
9279
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9280
9281
	Handle "." and ".." on squashfs.
9282
9283
	* grub-core/fs/squash4.c (grub_fshelp_node): New field stsize.
9284
	Make inode numbers into stack.
9285
	(grub_squash_read_symlink): Use stack.
9286
	(grub_squash_iterate_dir): Use stack. Create "." and ".." nodes.
9287
	(make_root_node): Fill stack.
9288
	(grub_squash_open): Use stack.
9289
9290
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9291
9292
	* grub-core/kern/emu/hostdisk.c (open_device): Set dest->dev to 0 after
9293
	freeing.
9294
9295
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9296
9297
	* util/grub-mkconfig_lib.in (print_option_help): Properly redirect
9298
	stderr on test calls.
9299
9300
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9301
9302
	* grub-core/fs/jfs.c (grub_jfs_find_file): Handle "." and "..".
9303
9304
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9305
9306
	* grub-core/fs/ntfs.c (list_file): Set mtime to correct value.
9307
9308
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9309
9310
	* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Don't skip "." and
9311
	"..".
9312
9313
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9314
9315
	* grub-core/fs/hfsplus.c (grub_hfsplus_catfile): New field parentid.
9316
	(grub_hfsplus_iterate_dir): Add "." and "..".
9317
9318
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9319
9320
	* grub-core/fs/cpio.c (canonicalize): Handle "..".
9321
	(grub_cpio_find_file) [MODE_USTAR]: Handle hardlinks.
9322
9323
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9324
9325
	* grub-core/fs/btrfs.c (GRUB_BTRFS_ITEM_TYPE_INODE_REF): New enum value.
9326
	(find_path): Handle "." and "..".
9327
9328
2012-05-27  Vladimir Serbinenko  <phcoder@gmail.com>
9329
9330
	* grub-core/fs/affs.c (grub_affs_file): New field hardlink.
9331
	(GRUB_AFFS_FILETYPE_HARDLINK): New enum value.
9332
	(grub_affs_iterate_dir): Handle hardlinks.
9333
9334
2012-05-26  Matthew Garrett  <mjg@redhat.com>
9335
9336
	* grub-core/term/efi/console.c (grub_efi_console_init): Set text mode.
9337
	(grub_efi_console_fini): Likewise.
9338
	* grub-core/video/efi_gop.c (framebuffer): New field offscreen.
9339
	(grub_video_gop_fill_mode_info): Rename to ...
9340
	(grub_video_gop_fill_real_mode_info): ... this.
9341
	(grub_video_gop_fill_mode_info): New function.
9342
	(grub_video_gop_setup): Setup double framebuffer.
9343
	(grub_video_gop_get_info_and_fini): Use original framebuffer.
9344
	Free offscreen.
9345
	(grub_video_gop_swap_buffers): Copy framebuffer.
9346
	(grub_video_gop_fini): Free offscreen buffer.
9347
	* include/grub/efi/graphics_output.h (grub_efi_gop_blt_operation_t):
9348
	New enum.
9349
	(grub_efi_gop_blt_pixel): New struct.
9350
9351
2012-05-26  Vladimir Serbinenko  <phcoder@gmail.com>
9352
9353
	* gentpl.py: Remove error disabling for objconv.
9354
9355
2012-05-26  Vladimir Serbinenko  <phcoder@gmail.com>
9356
9357
	* configure.ac: Remove -Wunitialized as it's not available on older
9358
	compilers.
9359
9360
2012-05-26  Vladimir Serbinenko  <phcoder@gmail.com>
9361
9362
	Fix extent overflow comparator.
9363
9364
	* grub-core/fs/hfsplus.c (grub_hfsplus_extkey_internal): Add type.
9365
	(grub_hfsplus_read_block): Set type.
9366
	(grub_hfsplus_cmp_extkey): Compare type.
9367
9368
2012-05-25  Vladimir Serbinenko  <phcoder@gmail.com>
9369
9370
	* util/grub-fstest.c (cmd_cmp): Fix stat'ing of wrong file.
9371
9372
2012-05-24  Vladimir Serbinenko  <phcoder@gmail.com>
9373
9374
	* grub-core/fs/hfsplus.c (grub_hfsplus_label): Use found ptr rather
9375
	than 0.
9376
9377
2012-05-24  Vladimir Serbinenko  <phcoder@gmail.com>
9378
9379
	* Makefile.am (starfield_DATA): Add dejavu_bold_14.pf2.
9380
	(dejavu_bold_14.pf2): New target.
9381
9382
2012-05-24  Vladimir Serbinenko  <phcoder@gmail.com>
9383
9384
	* configure.ac: Fix djvu font detection.
9385
9386
2012-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
9387
9388
	* grub-core/normal/misc.c (grub_normal_print_device_info): Dsiplay
9389
	ext* instead of ext2.
9390
9391
2012-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
9392
9393
	* grub-core/normal/term.c (read_terminal_list): Terminate the terminal
9394
	name with \0.
9395
9396
2012-05-22  Jordan Uggla  <jordan.uggla@gmail.com>
9397
9398
	* docs/grub-dev.texi: Remove dot from .png.
9399
9400
2012-05-22  Vladimir Serbinenko  <phcoder@gmail.com>
9401
9402
	* grub-core/partmap/gpt.c (grub_gpt_partition_map_iterate): Accept
9403
	protective entry in any slot.
9404
	* grub-core/partmap/msdos.c (grub_partition_msdos_iterate): Reject
9405
	if protective entry is found in any slot.
9406
9407
	Protective entry in non-first slot make no sense but is a widespread
9408
	brain damage.
9409
9410
2012-05-22  Vladimir Serbinenko  <phcoder@gmail.com>
9411
9412
	* grub-core/fs/squash4.c (grub_squash_read_data): Add missing byte-swap.
9413
9414
2012-05-22  Vladimir Serbinenko  <phcoder@gmail.com>
9415
9416
	* grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Fix size byteswap
9417
	with old reiserfs.
9418
	(grub_reiserfs_open): Don't free root.
9419
9420
2012-05-22  Vladimir Serbinenko  <phcoder@gmail.com>
9421
9422
	* grub-core/fs/fshelp.c (grub_fshelp_find_file): Set currnode to 0
9423
	after freeing for safety.
9424
9425
2012-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
9426
9427
	* grub-core/commands/sleep.c (do_print): Add missing grub_refresh.
9428
	Reported by: Jordan Uggla.
9429
9430
2012-05-21  Jordan Uggla  <jordan.uggla@gmail.com>
9431
9432
	* docs/grub.texi Fix documentation of GRUB_HIDDEN_TIMOUNT to match the
9433
	actual implementation. Specifically, clarify that the grub menu will
9434
	be displayed for GRUB_TIMOUT seconds after the hidden timeout has
9435
	passed.
9436
9437
2012-05-21  Benjamin Herrenschmidt <benh@kernel.crashing.org>
9438
9439
	* grub-core/kern/powerpc/dl.c (trampoline_template): Use r12 instead
9440
	of r0.
9441
9442
2012-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
9443
9444
	Remove unjustified hard dependency of normal.mod on gfxterm.
9445
9446
	* include/grub/term.h (grub_term_output): New member fullscreen.
9447
	* include/grub/gfxterm.h (grub_gfxterm_fullscreen): Removed.
9448
	* grub-core/term/gfxterm.c (grub_gfxterm_fullscreen): Make static.
9449
	(grub_gfxterm): Set .fullscreen.
9450
	* grub-core/normal/menu.c (menu_init): Use fullscreen.
9451
	* grub-core/gfxmenu/gfxmenu.c (GRUB_MOD_INIT): Likewise.
9452
9453
2012-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
9454
9455
	* docs/grub.texi (Internationalisation/Filesystems): Add precisions
9456
	mentioning possible problems with non-ASCII (non-compliant) ISOs.
9457
	Mention case-insensitive AFFS, SFS and JFS.
9458
9459
2012-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
9460
9461
	* grub-core/fs/affs.c (grub_affs_mtime): Add missing grub_dl_ref.
9462
9463
2012-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
9464
9465
	* grub-core/kern/fs.c (grub_fs_probe): Handle GRUB_ERR_OUT_OF_RANGE as
9466
	a bad FS.
9467
9468
2012-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
9469
9470
	* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Mark plain
9471
	ISO9660 names as case-insensitive, lowercase it and remove trailing dot.
9472
9473
2012-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
9474
9475
	* grub-core/fs/jfs.c (grub_jfs_data): New field caseins.
9476
	(grub_jfs_mount): Fill caseins.
9477
	(grub_jfs_find_file): Respect caseins.
9478
9479
2012-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
9480
9481
	* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Don't strrchr
9482
	through UTF-16.
9483
9484
2012-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
9485
9486
	* grub-core/fs/fat.c (grub_fat_find_dir): Fix error message.
9487
	New argument origpath. All users updated.
9488
9489
2012-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
9490
9491
	* grub-core/fs/ntfs.c (read_data): Prevent overflow.
9492
	(read_attr): Ensure that we read start of possibly compressed block.
9493
9494
2012-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
9495
9496
	* include/grub/ntfs.h (grub_ntfs_comp_table_element): New struct.
9497
	(grub_ntfs_comp): Use grub_ntfs_comp_table_element for comp_table.
9498
	All users updated.
9499
9500
2012-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
9501
9502
	* Makefile.am (starfield_DATA): Replace dejavu.pf2 with dejavu_10.pf2,
9503
	dejavu_12.pf2, dejavu_14.pf2 and dejavu_16.pf2.
9504
	(dejavu.pf2): Replace with ...
9505
	(dejavu_10.pf2), (dejavu_12.pf2), (dejavu_14.pf2), (dejavu_16.pf2):
9506
	this.
9507
9508
2012-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
9509
9510
	* util/grub.d/20_linux_xen.in: Add missing line.
9511
9512
2012-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
9513
9514
	* include/grub/charset.h (GRUB_UTF16_UPPER_SURROGATE): Fix mask sizes.
9515
	(GRUB_UTF16_LOWER_SURROGATE): Likewise.
9516
	(grub_utf16_to_utf8): Likewise.
9517
9518
2012-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
9519
9520
	* grub-core/disk/ieee1275/ofdisk.c (scan): Don't scan device tree if
9521
	GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS is set.
9522
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
9523
	GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS on IBM hardware.
9524
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
9525
	GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS.
9526
9527
2012-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
9528
9529
	* grub-core/kern/fs.c (grub_fs_probe): Handle GRUB_ERR_OUT_OF_RANGE as
9530
	a bad FS.
9531
9532
2012-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
9533
9534
	* grub-core/fs/udf.c (read_string): Bail out on size=0.
9535
	(grub_udf_read_symlink): Handle read_string failure.
9536
9537
2012-05-12  Vladimir Serbinenko  <phcoder@gmail.com>
9538
9539
	* grub-core/kern/emu/hostdisk.c (read_device_map): Improve TRANSLATORS
9540
	comment.
9541
9542
2012-05-12  Vladimir Serbinenko  <phcoder@gmail.com>
9543
9544
	Fix handling of UDF symlinks.
9545
9546
	* grub-core/fs/udf.c (read_string): New argument outbuf.
9547
	All users updated.
9548
	(grub_ufs_read_symlink): Rename to ...
9549
	(grub_udf_read_symlink): ... this. All users updated.
9550
	Handle symlinks with more than one component.
9551
9552
2012-05-12  Vladimir Serbinenko  <phcoder@gmail.com>
9553
9554
	* grub-core/fs/affs.c (grub_affs_read_symlink): Fix handling of long
9555
	symlinks. Replace leading colon with a slash.
9556
9557
2012-05-12  Vladimir Serbinenko  <phcoder@gmail.com>
9558
9559
	* grub-core/fs/jfs.c (grub_jfs_find_file): Handle multiple slashes in
9560
	filename.
9561
9562
2012-05-12  Vladimir Serbinenko  <phcoder@gmail.com>
9563
9564
	* grub-core/fs/bfs.c (find_in_b_tree) [MODE_AFS]: Fix handling of exact
9565
	match in inner node.
9566
9567
2012-05-12  Vladimir Serbinenko  <phcoder@gmail.com>
9568
9569
	* grub-core/fs/bfs.c (mount): Improve filesystem detection reliability.
9570
	* grub-core/fs/ext2.c (grub_ext2_mount): Likewise.
9571
	* grub-core/fs/hfs.c (grub_hfs_mount): Likewise.
9572
	* grub-core/fs/hfsplus.c (grub_hfsplus_mount): Likewise.
9573
	* grub-core/fs/jfs.c (grub_jfs_mount): Likewise.
9574
	* grub-core/fs/minix.c (grub_minix_mount): Likewise.
9575
	* grub-core/fs/ntfs.c (grub_ntfs_mount): Likewise.
9576
	* grub-core/fs/romfs.c (grub_romfs_mount): Likewise.
9577
	* grub-core/fs/xfs.c (grub_xfs_mount): Likewise.
9578
9579
2012-05-11  Vladimir Serbinenko  <phcoder@gmail.com>
9580
9581
	Use grub-probe and not cmp to check that disk is empty.
9582
9583
	* util/grub-install.in: Use grub-probe for zero-check.
9584
	* util/grub-probe.c (PRINT_ZERO_CHECK): New enum value.
9585
	(probe): Handle PRINT_ZERO_CHECK.
9586
	(argp_parser): Handle -t zero_check.
9587
9588
2012-05-11  Vladimir Serbinenko  <phcoder@gmail.com>
9589
9590
	Flush block cache on adding disk to device map.
9591
9592
	* grub-core/kern/emu/hostdisk.c (flush_initial_buffer): New function.
9593
	(grub_hostdisk_os_dev_to_grub_drive): Call flush_initial_buffer on
9594
	adding.
9595
	(read_device_map): Likewise.
9596
	(open_device): Flush on opening.
9597
9598
2012-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
9599
9600
	* grub-core/fs/cpio.c (grub_cpio_find_file): Handle prefix.
9601
	(handle_symlink): Fix off-by-one error.
9602
	Canonicalize the target.
9603
	(grub_cpio_dir): Canonicalize the name.
9604
	Fix memory leak.
9605
	Set directory.
9606
	(grub_cpio_open): Canonicalize the name.
9607
9608
2012-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
9609
9610
	* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Fix symlink
9611
	handling.
9612
9613
2012-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
9614
9615
	* grub-core/fs/ufs.c (grub_ufs_find_file): Fix handling of double slash.
9616
	* grub-core/fs/minix.c (grub_minix_find_file): Likewise.
9617
9618
2012-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
9619
9620
	* util/grub-menulst2cfg.c (main): Check return value of fwrite.
9621
	* util/grub-mklayout.c (write_file): Likewise. New argument fname.
9622
	All users updated.
9623
9624
2012-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
9625
9626
	* util/grub.d/20_linux_xen.in: Update initrd list based on 10_linux.in
9627
	counterpart.
9628
9629
2012-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
9630
9631
	Fix UFS1 big file support.
9632
9633
	* grub-core/fs/ufs.c (INODE): Removed.
9634
	(INODE_SIZE): Always use 64-bit byte-swap since size field is always
9635
	64-bit.
9636
	(INODE_MODE): Simplify.
9637
	(grub_ufs_inode): Use uint64_t for size and not int64_t.
9638
	(grub_ufs_lookup_symlink): Don't use INODE.
9639
9640
2012-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
9641
9642
	Fix minixfs with non-power-of-two blocks since it's supported by minix.
9643
9644
	* grub-core/fs/minix.c (GRUB_MINIX_ZONESZ): Use block_size.
9645
	(grub_minix_data): Replace log_block_size with block_size.
9646
	(grub_minix_read_file): Use block_size but avoid 64-bit division.
9647
	(grub_minix_mount): Fill block_size.
9648
9649
2012-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
9650
9651
	* configure.ac: Bump to beta5.
9652
9653
2012-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
9654
9655
	Fix wrapped HFS+ handling.
9656
9657
	* grub-core/fs/fshelp.c (grub_fshelp_read_file): New argument
9658
	blocks_start. All users updated.
9659
	* grub-core/fs/hfsplus.c (grub_hfsplus_read_block): Don't add
9660
	wrapping offset.
9661
	(grub_hfsplus_read_file): Pass embedding offset to fshelp_read_file.
9662
9663
2012-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
9664
9665
	Fix long symlinks on reiserfs.
9666
9667
	* grub-core/fs/reiserfs.c (grub_fshelp_node): New field size.
9668
	(grub_reiserfs_read_symlink): Use grub_reiserfs_read_real.
9669
	(grub_reiserfs_iterate_dir): Save size for non-directories.
9670
	(grub_reiserfs_open): Don't reread stat block as we already know the
9671
	size.
9672
	(grub_reiserfs_read): Split into...
9673
	(grub_reiserfs_read_real): ... and ...
9674
	(grub_reiserfs_read): ...this.
9675
9676
2012-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
9677
9678
	Fix non-indexed JFS.
9679
9680
	* grub-core/fs/jfs.c (grub_jfs_sblock): New field flags.
9681
	(grub_jfs_data): New field namecomponentlen.
9682
	(grub_jfs_mount): Fill namecomponentlen.
9683
	(grub_jfs_getent): Use namecomponentlen rather than hardcoded 11.
9684
9685
2012-05-08  Vladimir Serbinenko  <phcoder@gmail.com>
9686
9687
	* grub-core/script/yylex.l: Ugly fix for "\\\n ".
9688
	* tests/grub_script_echo1.in: Add tests.
9689
9690
2012-05-08  Vladimir Serbinenko  <phcoder@gmail.com>
9691
9692
	* util/grub-install.in: Ignore empty devicetree directory.
9693
9694
2012-05-08  Bean  <bean123ch@gmail.com>
9695
9696
	* grub-core/net/ip.c (reassemble): Make asm_buffer into asm_netbuff.
9697
	All users updated.
9698
	(free_rsm): Free header as well.
9699
	(free_old_fragments): Fix memory leak.
9700
	* grub-core/net/netbuff.c (grub_netbuff_free): Make return void.
9701
	* grub-core/net/tftp.c (tftp_receive): Fix memory leak.
9702
	(destroy_pq): Likewise.
9703
	* include/grub/net/netbuff.h (grub_netbuff_free): Make return void.
9704
9705
2012-05-08  Vladimir Serbinenko  <phcoder@gmail.com>
9706
9707
	* grub-core/commands/hashsum.c (grub_cmd_hashsum): Align space for
9708
	resulting hash as a precaution.
9709
9710
2012-05-08  Vladimir Serbinenko  <phcoder@gmail.com>
9711
9712
	* grub-core/net/bootp.c (set_env_limn_ro): Replace reserved ':' with
9713
	'_' in variable names.
9714
	* grub-core/net/net.c (grub_net_network_level_interface_register):
9715
	Likewise.
9716
9717
2012-05-08  Vladimir Serbinenko  <phcoder@gmail.com>
9718
9719
	Fix AFFS with non-512B blocks.
9720
9721
	* grub-core/fs/affs.c (grub_affs_rblock): Make type uint32_t.
9722
	(AFFS_MAX_LOG_BLOCK_SIZE): New definition.
9723
	(grub_affs_data): Replace blocksize with log_blocksize.
9724
	(grub_affs_read_block): Fix non-512B blocks.
9725
	(grub_affs_read_symlink): Likewise.
9726
	(grub_affs_iterate_dir): Likewise. Fix freeing corruption.
9727
	(grub_affs_read): Fix non-512B blocks.
9728
	(grub_affs_label): Likewise.
9729
	(grub_affs_mtime): Likewise.
9730
	(grub_affs_mount): Fix block detection routine.
9731
9732
2012-05-08  Vladimir Serbinenko  <phcoder@gmail.com>
9733
9734
	Add filesystem mtime to AFFS.
9735
9736
	* grub-core/fs/affs.c (grub_affs_file): Make type unsigned.
9737
	(aftime2ctime): New function.
9738
	(grub_affs_dir): Use aftime2ctime.
9739
	(grub_affs_label): Fix return value.
9740
	(grub_affs_mtime): New function.
9741
	(grub_affs_fs): Add mtime.
9742
9743
2012-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
9744
9745
	* grub-core/fs/affs.c (grub_affs_read_symlink): Convert latin1 into
9746
	UTF-8.
9747
9748
2012-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
9749
9750
	* grub-core/fs/sfs.c (grub_sfs_read_symlink): Convert latin1 into
9751
	UTF-8.
9752
9753
2012-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
9754
9755
	* grub-core/fs/affs.c (grub_affs_iterate_dir): Mark as case insensitive.
9756
9757
2012-05-07  Vladimir Serbinenko  <phcoder@gmail.com>
9758
9759
	* grub-core/fs/sfs.c (grub_sfs_rblock): New fields createtime and
9760
	flags.
9761
	(FLAGS_CASE_SENSITIVE): New enum value.
9762
	(cache_entry): New struct.
9763
	(grub_fshelp_node): Add fields cache_off, next_extent, cache_allocated,
9764
	cache_size and cache.
9765
	(grub_sfs_data): Remove blocksize. All users switched to log_blocksize.
9766
	Add log_blocksize and fshelp_flags.
9767
	(grub_sfs_read_extent): Handle non-512 blocks.
9768
	(grub_sfs_read_block): Add cаche and handle non-512 blocks.
9769
	(grub_sfs_read_file): Handle non-512 blocks.
9770
	(grub_sfs_mount): Handle non-512 blocks. Fill log_blocksize and
9771
	fshelp_flags.
9772
	(grub_sfs_read_symlink): Handle non-512 blocks.
9773
	(grub_sfs_iterate_dir): Init new fields. Mark as case-insensitive.
9774
	(grub_sfs_dir): Free cache.
9775
	(grub_sfs_close): Likewise.
9776
9777
2012-05-06  Vladimir Serbinenko  <phcoder@gmail.com>
9778
9779
	* grub-core/fs/bfs.c (read_bfs_file): Fix overflow with over 2TiB
9780
	filesystems.
9781
9782
2012-05-06  Vladimir Serbinenko  <phcoder@gmail.com>
9783
9784
	* grub-core/fs/affs.c (grub_affs_read_block): Fix theoretical overflow.
9785
9786
2012-05-06  Vladimir Serbinenko  <phcoder@gmail.com>
9787
9788
	* grub-core/commands/ls.c (grub_ls_list_files): Fix overflow.
9789
9790
2012-05-06  Vladimir Serbinenko  <phcoder@gmail.com>
9791
9792
	* grub-core/fs/sfs.c (grub_fshelp_node): Fix types.
9793
	(grub_sfs_read_extent): Likewise.
9794
	(grub_sfs_read_block): Likewise.
9795
	(grub_sfs_mount): Likewise.
9796
	(grub_sfs_iterate_dir): Likewise.
9797
	(grub_sfs_read_symlink): Use strncpy instead of strcpy.
9798
	(grub_sfs_read): Remove unnecessarry and wrong temporary variable.
9799
9800
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9801
9802
	Fix errors on compressed NTFS with 512B clusters.
9803
9804
	* include/grub/ntfs.h (grub_ntfscomp_func_t): Use appropriately sized
9805
	types.
9806
	* grub-core/fs/ntfs.c (grub_ntfs_read): Return correct -1 on error and
9807
	not 0.
9808
	* grub-core/fs/ntfscomp.c (read_block): Use appropriately-sized types.
9809
	Relax check for inline extents.
9810
	(ntfscomp): Return correct -1 on error and not 0.
9811
9812
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9813
9814
	* util/grub-install.in: Fix handling of prefix containing spaces.
9815
9816
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9817
9818
	* grub-core/fs/squash4.c (grub_squash_inode): Fix offset field.
9819
	(grub_squash_read_data): Fix offset byte-swapping.
9820
9821
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9822
9823
	* grub-core/kern/misc.c (grub_strcmp): Use unsigned comparison as
9824
	per common usage and preffered in several parts of code.
9825
	(grub_memcmp): Likewise.
9826
	(grub_strncmp): Likewise.
9827
	* include/grub/misc.h (grub_strcasecmp): Likewise.
9828
	(grub_strncasecmp): Likewise.
9829
	* Makefile.util.def (cmp_test): New test.
9830
	(grub_script_strcmp): Likewise.
9831
	* tests/cmp_unit_test.c: New file.
9832
	* tests/grub_script_strcmp.in: Likewise.
9833
	* grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey): Add a comment.
9834
9835
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9836
9837
	* include/grub/pci.h: Move enums into no-asm part.
9838
9839
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9840
9841
	* grub-core/fs/bfs.c (bfs_strcmp) [MODE_AFS]: Use signed comparison.
9842
9843
2012-05-04  Samuel Thibault <samuel.thibault@ens-lyon.org>
9844
9845
	* util/getroot.c (find_hurd_root_device): Try to make error message
9846
	and comments to translators clearer.
9847
9848
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9849
9850
	* grub-core/commands/menuentry.c: Fix typo in TRANSLATORS comments.
9851
9852
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9853
9854
	* grub-core/kern/fs.c (grub_fs_probe) [GRUB_UTIL]: Add workaround for
9855
	btrfs.
9856
9857
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9858
9859
	* docs/grub.cfg: Update.
9860
9861
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9862
9863
	* docs/grub.texi (PXE): Remove not present variables.
9864
9865
2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
9866
9867
	* grub-core/net/net.c (defserver_set_env): New function.
9868
	(defserver_get_env): Likewise.
9869
	(GRUB_MOD_INIT): Register net_default_server and pxe_default_server.
9870
9871
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9872
9873
	* grub-core/kern/emu/hostdisk.c (read_device_map): Skip invalid Fedora
9874
	entries.
9875
9876
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9877
9878
	* grub-core/commands/menuentry.c: Add TRANSLATORS comments.
9879
	* grub-core/kern/emu/hostdisk.c: Likewise.
9880
9881
2012-05-03  Samuel Thibault  <samuel.thibault@ens-lyon.org>
9882
9883
	Handle hurd userspace partitions.
9884
9885
	* util/getroot.c (find_hurd_root_device): New function.
9886
	(grub_guess_root_devices): Use find_hurd_root_device on Hurd.
9887
9888
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9889
9890
	* util/getroot.c (convert_system_partition_to_system_disk); Add etherd
9891
	names.
9892
	Reported by: Bastian Blank.
9893
9894
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9895
9896
	* grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Fix offset when
9897
	crossing page boundary.
9898
9899
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9900
9901
	Fix B-tree search in BFS, especially in presence of non-ASCII
9902
	characters.
9903
9904
	* grub-core/fs/bfs.c (bfs_strcmp): New function.
9905
	(find_in_b_tree): Use standard bsearch + btree algorithm.
9906
9907
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9908
9909
	* util/grub-fstest.c (cmd_cmp): Avoid comparing devices, pipes
9910
	and so on.
9911
9912
2012-05-03  Matthew Garrett  <mjg@redhat.com>
9913
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9914
9915
	Suspend broadcom cards in order to stop their DMA.
9916
9917
	* grub-core/Makefile.am (KERNEL_HEADER_FILES): Add pci.h on x86 EFI.
9918
	* grub-core/Makefile.core.def (kernel): Add pci.c on x86 EFI.
9919
	(pci): Don't build on x86 EFI.
9920
	* grub-core/bus/pci.c (grub_pci_find_capability): New function.
9921
	* grub-core/kern/efi/mm.c (stop_broadcom) [__i386__ || __x86_64__]:
9922
	New function.
9923
	(grub_efi_finish_boot_services) [__i386__ || __x86_64__]: Call
9924
	stop_broadcom if running on EFI.
9925
	* include/grub/pci.h (GRUB_PCI_CLASS_NETWORK): New enum value.
9926
	(GRUB_PCI_CAP_POWER_MANAGEMENT): Likewise.
9927
	(GRUB_PCI_VENDOR_BROADCOM): Likewise.
9928
	(grub_pci_find_capability): New proto.
9929
9930
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9931
9932
	* docs/grub.texi: Remove dot from the extension as it apparently
9933
	doesn't work with some makeinfo versions.
9934
9935
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9936
9937
	* po/Makefile.in.in: Make msgfmt output in little-endian in accordance
9938
	with GRUB expectance.
9939
9940
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9941
9942
	* util/grub-fstest.c (cmd_cmp): Compare directories recursively.
9943
9944
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9945
9946
	* grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Put a trailing
9947
	zero after directory block since last entry may be not 0-terminated if
9948
	it ends on block boundary. Use continue instead of if spanning whole
9949
	loop.
9950
9951
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9952
9953
	Support 4K sectors UDF inline files.
9954
9955
	* grub-core/fs/udf.c (grub_udf_file_entry): Don't specify padding size.
9956
	(grub_udf_extended_file_entry): Likewise.
9957
	(grub_fshelp_node): Name the anonymous union. Put block at the end.
9958
	All users updated.
9959
	(get_fshelp_size): New function.
9960
	(grub_udf_read_icb): Read whole block.
9961
	(grub_udf_iterate_dir): Likewise.
9962
	(grub_udf_dir): Likewise.
9963
	(grub_udf_open): Likewise.
9964
9965
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9966
9967
	* grub-core/fs/ufs.c (grub_ufs_get_file_block): Support triple indirect.
9968
9969
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9970
9971
	* grub-core/fs/ufs.c (grub_ufs_lookup_symlink): Use proper check for
9972
	inline symlinks in addition to workaround.
9973
9974
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9975
9976
	* grub-core/fs/xfs.c (grub_xfs_iterate_dir): Handle read_inode errors.
9977
9978
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9979
9980
	* grub-core/fs/xfs.c (GRUB_XFS_EXTENT_BLOCK): Fix bitmask.
9981
9982
2012-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
9983
9984
	* grub-core/fs/zfs/zfs.c (nvlist_find_value): Fix return value.
9985
9986
2012-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
9987
9988
	Fix reiserfs big seek times.
9989
9990
	* grub-core/fs/reiserfs.c (grub_reiserfs_get_item): New argument
9991
	exact. All users updated.
9992
	(grub_reiserfs_read): Use nearest btree search for seeking.
9993
	Fix return value on error.
9994
9995
2012-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
9996
9997
	* grub-core/commands/legacycfg.c (legacy_file): Default to restricted
9998
	entries.
9999
	* grub-core/commands/menuentry.c (grub_cmd_menuentry): Likewise.
10000
	* docs/grub.texi: Update menuentry description.
10001
10002
2012-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
10003
10004
	* util/grub-setup.c (setup): Remove duplicate call to embed. Fixes
10005
	crash when embedding onto filesystem.
10006
10007
2012-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
10008
10009
	* util/getroot.c (find_root_devices_from_poolname): Handle spaces in the
10010
	name.
10011
10012
2012-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
10013
10014
	* grub-core/net/ip.c (handle_dgram): Fix undeclared variable.
10015
10016
2012-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
10017
10018
	* grub-core/normal/autofs.c (read_fs_list): Revert accidental wrong
10019
	commit.
10020
10021
2012-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
10022
2012-05-01  Bean  <bean123ch@gmail.com>
10023
10024
	* grub-core/net/ip.c (handle_dgram): Fix DHCP mac comparison.
10025
10026
2012-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
10027
10028
	* grub-core/kern/file.c (grub_file_read): Read nothing if len = 0.
10029
	Special behaviour for len = 0 to read whole file isn't used anywhere and
10030
	can cause buffer ovewrflows in several places.
10031
10032
2012-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
10033
10034
	* grub-core/normal/autofs.c (read_fs_list): Fix memory leak.
10035
10036
2012-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
10037
10038
	Handle RAIDZ on non-512B sectors.
10039
10040
	* grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New member
10041
	max_children_ashift.
10042
	(fill_vdev_info_real): Fill max_children_ashift.
10043
	(read_device): Use max_children_ashift.
10044
10045
2012-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
10046
10047
	* grub-core/fs/fshelp.c (grub_fshelp_find_file): Fix memory leak.
10048
10049
2012-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
10050
10051
	* grub-core/kern/emu/hostdisk.c (read_device_map): Reject non-standard
10052
	disk names.
10053
	* docs/grub.texi: Update device.map parts.
10054
10055
2012-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
10056
10057
	Don't scan into non-diskfilter devices having diskfilter names.
10058
10059
	* grub-core/disk/diskfilter.c (is_valid_diskfilter_name): New function.
10060
	(scan_disk): New argument accept_diskfilter. Fix recursion depth
10061
	handling.
10062
	(scan_disk_hook): New function.
10063
10064
2012-04-29  Bean  <bean123ch@gmail.com>
10065
10066
	* grub-core/net/drivers/efi/efinet.c (get_card_packet): Fix buffer
10067
	allocation.
10068
10069
2012-04-29  Mads Kiilerich  <mads@kiilerich.com> (tiny)
10070
10071
	* configure.ac: Detect starfield theme font path
10072
	/usr/share/fonts/dejavu/DejaVuSans.ttf for Fedora.
10073
10074
2012-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
10075
10076
	* grub-core/term/ieee1275/console.c (grub_console_dimensions): Use 80x24
10077
	geometry on serial consoles.
10078
10079
2012-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
10080
10081
	* grub-core/term/terminfo.c (grub_terminfo_readkey): Increase timeout
10082
	because of network consoles.
10083
10084
2012-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
10085
10086
	* grub-core/term/terminfo.c (grub_terminfo_getkey): Fix incorrect queue
10087
	handling.
10088
10089
2012-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
10090
10091
	* grub-core/disk/diskfilter.c (read_segment): Fix the case when disknr
10092
	falls on Q syndrom.
10093
10094
2012-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
10095
10096
	* grub-core/fs/nilfs2.c (grub_nilfs2_palloc_entry_offset_log):
10097
	Fix argument to grub_nilfs2_palloc_bitmap_block_offset.
10098
10099
2012-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
10100
10101
	* grub-core/fs/squash4.c (lzo_decompress): Set grub_errno on error.
10102
	Allocate at lest 8192 for temporary buffer as required for lzo.
10103
10104
2012-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
10105
10106
	* grub-core/fs/fat.c (grub_fat_mount): Don't add logical_sector_bits
10107
	to cluster_bits, since it's already added in.
10108
	(grub_fat_read_data): Likewise.
10109
10110
2012-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
10111
10112
	* grub-core/fs/ntfs.c (grub_ntfs_mount): Support 256-byte sectors,
10113
	as long as cluster size is multiple of 512 bytes.
10114
10115
2012-04-23  Vladimir Serbinenko  <phcoder@gmail.com>
10116
10117
	* util/grub-mkrescue.in: Fix locale directory.
10118
10119
2012-04-23  Vladimir Serbinenko  <phcoder@gmail.com>
10120
10121
	* grub-core/kern/emu/hostdisk.c (map): Make static.
10122
10123
2012-04-23  Bean  <bean123ch@gmail.com>
10124
10125
	* util/grub-fstest.c (fstest): Add missing break.
10126
10127
2012-04-22  Samuel Thibault  <samuel.thibault@ens-lyon.org>
10128
10129
	Fix hurd build.
10130
10131
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size) [__GNU__]: Do
10132
	not define nr variable.
10133
	* util/getroot.c [__GNU__] (strip_extra_slashes, xgetcwd, exec_pipe,
10134
	find_root_devices_from_poolname, find_root_devices_from_libzfs,
10135
	grub_find_device): Do not define.
10136
10137
2012-04-21  Vladimir Serbinenko  <phcoder@gmail.com>
10138
10139
	Fix kfreebsd compile and behaviour.
10140
10141
	* grub-core/kern/emu/hostdisk.c (grub_util_follow_gpart_up): Fix
10142
	format-security.
10143
	* util/getroot.c: Fix wait.h include.
10144
	(grub_guess_root_devices): Error if grub_find_device fails.
10145
	(grub_util_get_geom_abstraction): Fix shadowing and format-security.
10146
	(grub_util_get_dev_abstraction): Likewise.
10147
	(grub_util_pull_device): Likewise.
10148
	(grub_util_get_grub_dev): Likewise.
10149
	* util/lvm.c (grub_util_lvm_isvolume): Likewise.
10150
10151
2012-04-21  Vladimir Serbinenko  <phcoder@gmail.com>
10152
10153
	Fix and unify wholedisk detection.
10154
10155
	* util/getroot.c (convert_system_partition_to_system_disk): New argument
10156
	is_part. All users updated.
10157
	(device_is_wholedisk): Removed.
10158
	(grub_util_biosdisk_get_grub_dev): Use is_part.
10159
10160
2012-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
10161
10162
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write): Fix opening
10163
	mode.
10164
10165
2012-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
10166
10167
	* configure.ac: Bump to beta4.
10168
10169
2012-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
10170
10171
	* grub-core/commands/search_wrap.c (grub_cmd_search): Handle old
10172
	--fs-uuid --set UUID syntax.
10173
10174
2012-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
10175
10176
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write): Fix message
10177
	disunification.
10178
10179
2012-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
10180
10181
	* conf/Makefile.common (LDFLAGS_PLATFORM): Use explicit -Wl.
10182
10183
2012-04-18  Mads Kiilerich <mads@kiilerich.com>
10184
10185
         * grub-mkconfig_lib.in: Ignore *.rpmnew and *.rpmsave.
10186
10187
2012-04-18  Mike Gilbert  <floppym@gentoo.org>
10188
10189
	* util/grub.d/10_linux.in: Fix detection of genkernel initramfs.
10190
10191
2012-04-18  Bean  <bean123ch@gmail.com>
10192
10193
	* grub-core/disk/ata.c (grub_ata_strncpy): Put terminating zero at right
10194
	place.
10195
10196
2012-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
10197
10198
	* grub-core/kern/emu/hostdisk.c (open_device): New argument max. All
10199
	users updated.
10200
	(grub_util_biosdisk_read): Handle Linux partitions not exactly
10201
	corresponding to GRUB partitions.
10202
	(grub_util_biosdisk_write): Likewise.
10203
10204
2012-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
10205
10206
	Scan mdraid before LVM.
10207
10208
	* include/grub/diskfilter.h (grub_diskfilter_register): Renamed to ..
10209
	(grub_diskfilter_register_front): ... this.
10210
	(grub_diskfilter_register_back): New function.
10211
	All users of grub_diskfilter_register updated.
10212
10213
2012-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
10214
10215
	* util/grub-install.in: Fix an automatic target detection bug.
10216
10217
2012-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
10218
10219
	* util/grub-install.in: New option --efi-directory.
10220
10221
2012-04-17  Vladimir Serbinenko  <phcoder@gmail.com>
10222
10223
	* grub-core/loader/i386/linux.c (allocate_pages): Overwrite low memory
10224
	boot services if we have no other choice.
10225
10226
2012-04-14  Vladimir Serbinenko  <phcoder@gmail.com>
10227
10228
	* util/grub-mknetdir.in: Rename --override-directory to --directory and
10229
	document it.
10230
	* tests/util/grub-shell.in: Update to --directory.
10231
10232
2012-04-13  Vladimir Serbinenko  <phcoder@gmail.com>
10233
10234
	* grub-core/fs/zfs/zfs.c: Disable -Wstrict-aliasing.
10235
10236
2012-04-13  Vladimir Serbinenko  <phcoder@gmail.com>
10237
10238
	* grub-core/fs/minix.c (grub_minix_data): Fix ino type.
10239
	(grub_minix_read_file): Likewise.
10240
	(grub_minix_read_inode): Likewise.
10241
	(grub_minix_find_file): Likewise.
10242
	(grub_minix_dir): Likewise.
10243
10244
2012-04-13  Vladimir Serbinenko  <phcoder@gmail.com>
10245
10246
	* util/grub-setup.c (setup): Fix partition handling and blocklist
10247
	check.
10248
10249
2012-04-13  Vladimir Serbinenko  <phcoder@gmail.com>
10250
10251
	* grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align): Remove
10252
	redundant buggy overlap check.
10253
10254
2012-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
10255
10256
	* tests/util/grub-shell.in: Set pkgdatadir when calling grub-mkrescue
10257
	and grub-mknetdir.
10258
10259
2012-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
10260
10261
	* grub-core/loader/i386/linux.c (grub_cmd_linux): Avoid accessing
10262
	kh.loadflags on pre-2.00 kernels.
10263
10264
2012-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
10265
10266
	Terminate UNDI and PXE before launching the payload to avoid problems
10267
	with DMA.
10268
10269
	* grub-core/commands/boot.c (grub_loader_noreturn): Rename to ...
10270
	(grub_loader_flags): ... this. All users updated.
10271
	(grub_loader_boot): Check for GRUB_LOADER_FLAG_NORETURN.
10272
	* grub-core/loader/i386/pc/pxechainloader.c (grub_cmd_pxechain): Mark
10273
	loader as GRUB_LOADER_FLAG_PXE_NOT_UNLOAD.
10274
	* grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_shutdown): New
10275
	function.
10276
	(grub_pxe_restore): Likewise.
10277
	(fini_hnd): New var.
10278
	(GRUB_MOD_INIT): Register shutdown hook.
10279
	(GRUB_MOD_FINI): Shutdown and unregister shutdown hook.
10280
	* include/grub/loader.h (GRUB_LOADER_FLAG_NORETURN): New const.
10281
	(GRUB_LOADER_FLAG_PXE_NOT_UNLOAD): Likewise.
10282
	(grub_loader_set): Rename second argument to flags.
10283
10284
2012-04-07  Vladimir Serbinenko  <phcoder@gmail.com>
10285
10286
	* grub-core/normal/charset.c (grub_ucs4_to_utf8): Return number of
10287
	written bytes.
10288
	(grub_get_num_of_utf8_bytes): New function.
10289
	(grub_ucs4_to_utf8_alloc): Use grub_get_num_of_utf8_bytes.
10290
	* grub-core/normal/menu_entry.c (run): Convert entry to UTF-8 before
10291
	executing it.
10292
	* include/grub/charset.h (grub_get_num_of_utf8_bytes): New proto.
10293
	(grub_ucs4_to_utf8): Change return type.
10294
10295
2012-04-07  Vladimir Serbinenko  <phcoder@gmail.com>
10296
10297
	* grub-core/commands/usbtest.c (usb_print_str): Silence spurious
10298
	warning.
10299
	* grub-core/fs/bfs.c (hop_level): Likewise.
10300
	* grub-core/net/bootp.c (grub_cmd_bootp): Likewise.
10301
10302
2012-04-07  Vladimir Serbinenko  <phcoder@gmail.com>
10303
10304
	* grub-core/lib/adler32.c: Recode due to license unclearness.
10305
10306
2012-04-07  Vladimir Serbinenko  <phcoder@gmail.com>
10307
10308
	* grub-core/io/lzopio.c (read_block_header): Fix incorrect byte swapping
10309
	(test_header): Likewise.
10310
10311
2012-04-07  Vladimir Serbinenko  <phcoder@gmail.com>
10312
10313
	Fix --help formatting.
10314
10315
	* util/grub-mkconfig_lib.in (print_option_help): New function.
10316
	(grub_fmt): Likewise.
10317
	* util/grub-install.in: Use print_option_help and grub_fmt.
10318
	* util/grub-kbdcomp.in: Likewise.
10319
	* util/grub-mkconfig.in: Likewise.
10320
	* util/grub-mknetdir.in: Likewise.
10321
	* util/grub-mkrescue.in: Likewise.
10322
	* util/grub-mkstandalone.in: Likewise.
10323
	* util/grub-reboot.in: Likewise.
10324
	* util/grub-set-default.in: Likewise.
10325
	* util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
10326
10327
2012-04-07  Vladimir Serbinenko  <phcoder@gmail.com>
10328
10329
	* linguas.sh: Remove autogenerated *.po.
10330
10331
2012-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
10332
10333
	* po/README: Move language fetcing to ...
10334
	* linguas.sh: ... here.
10335
	* po/README: Point to linguas.sh.
10336
10337
2012-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
10338
10339
	* po/README: Exclude ko.po due to disclaimer problems.
10340
10341
2012-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
10342
10343
	* grub-core/gettext/gettext.c (grub_gettext_pread): Fix the case when
10344
	len = 0.
10345
	(grub_gettext_translate_real): Handle 0th string.
10346
	(grub_gettext_translate): Ensure that "" isn't translated.
10347
10348
2012-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
10349
10350
	* grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Add
10351
	TRANSLATORS comment.
10352
	(grub_diskfilter_print_partmap): Propagate changing of error into
10353
	warning.
10354
10355
2012-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
10356
10357
	* include/grub/diskfilter.h (grub_diskfilter_vg): Increase extent_size
10358
	to uint64_t to prevent overflow.
10359
	(grub_diskfilter_lv): Increase start_extent and extent_count
10360
	to uint64_t to prevent overflow.
10361
10362
2012-04-01  Vladimir Serbinenko  <phcoder@gmail.com>
10363
10364
	* configure.ac: Increase version.
10365
10366
2012-04-01  Vladimir Serbinenko  <phcoder@gmail.com>
10367
10368
	Introduce en@cyrillic en@hebrew en@arabic and en@greek.
10369
10370
	* po/Rules-translit: New file.
10371
	* po/arabic.sed: Likewise.
10372
	* po/cyrillic.sed: Likewise.
10373
	* po/greek.sed: Likewise.
10374
	* po/hebrew.sed: Likewise.
10375
	* po/README: Add en@cyrillic en@hebrew en@arabic and en@greek.
10376
	* po/Makefile.in.in: Add extra_dist4.
10377
10378
2012-04-01  Vladimir Serbinenko  <phcoder@gmail.com>
10379
10380
	Handle big-endian minixfs (fixes minixfs tests on bigendian).
10381
10382
	* grub-core/fs/minix.c: Replace le with minix. Add necessary defines,
10383
	modify names. Introduce MODE_BIGENDIAN.
10384
	* grub-core/fs/minix_be.c: New file.
10385
	* grub-core/fs/minix2_be.c: Likewise
10386
	* grub-core/fs/minix3_be.c: Likewise.
10387
	* Makefile.util.def (libgrubmods): Add minix_be, minix2_be and
10388
	minix3_be.
10389
	* grub-core/Makefile.core.def (minix_be): New module.
10390
	(minix2_be): Likewise.
10391
	(minix3_be): Likewise.
10392
10393
2012-04-01  Felix <email@hamburg.de>
10394
10395
	* grub-core/loader/efi/appleloader.c (devpath_7): New var.
10396
	(devs): Add MBP 2011.
10397
10398
2012-04-01  Vladimir Serbinenko  <phcoder@gmail.com>
10399
10400
	* grub-core/font/font.c (blit_comb): Handle dagesh somewhat.
10401
10402
2012-04-01  Vladimir Serbinenko  <phcoder@gmail.com>
10403
10404
	* grub-core/normal/cmdline.c (print_completion): New field
10405
	prompt_len.
10406
	(grub_cmdline_get): Handle width properly.
10407
10408
2012-04-01  Vladimir Serbinenko  <phcoder@gmail.com>
10409
10410
	* grub-core/commands/lsacpi.c (options): Add missing terminator.
10411
10412
2012-03-31  Vladimir Serbinenko  <phcoder@gmail.com>
10413
10414
	* include/grub/datetime.h (grub_datetime2unixtime): Fix handling of days
10415
	after 29th of February.
10416
10417
2012-03-31  Vladimir Serbinenko  <phcoder@gmail.com>
10418
10419
	Fix exfat endianness handling.
10420
10421
	* grub-core/fs/fat.c (grub_fat_data): Make fat_sector 32-bit.
10422
	(grub_fat_mount) [MODE_EXFAT]: Fix bpb.num_reserved_sectors byte-swap.
10423
	(grub_fat_iterate_dir) [MODE_EXFAT]: Fix attr byte-swap.
10424
	Byte-swap utf16 when necessary.
10425
	(grub_fat_label) [MODE_EXFAT]: Byte-swap utf16 when necessary.
10426
10427
2012-03-31  Anton Blanchard  <anton@samba.org>
10428
2012-03-31  Vladimir Serbinenko  <phcoder@gmail.com>
10429
10430
	Fix btrfs endianness handling.
10431
10432
	* grub-core/fs/btrfs.c (key_cmp): Use grub_le_to_cpu for clarity.
10433
	(lower_bound): Make root uint64_t. Use root in le.
10434
	(grub_btrfs_read_logical): Fix template key init. Fix address byteswap.
10435
	(find_path): Fix template key init.
10436
	(grub_btrfs_dir): Fix mtime byteswap.
10437
	* include/grub/types.h (grub_cpu_to_le64_compile_time): New macro.
10438
10439
2012-03-31  Vladimir Serbinenko  <phcoder@gmail.com>
10440
10441
	* grub-core/fs/btrfs.c (grub_btrfs_read_logical): New argument
10442
	recursion_depth. Break infinite resursions. All users updated.
10443
10444
2012-03-31  Vladimir Serbinenko  <phcoder@gmail.com>
10445
10446
	* util/getroot.c (convert_system_partition_to_system_disk): Fix use
10447
	after free.
10448
	Reported by: Peter Jones.
10449
10450
2012-03-31  Anton Blanchard  <anton@samba.org>
10451
10452
	* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Do not byteswap
10453
	8 bit values.
10454
10455
2012-03-28  Vladimir Serbinenko  <phcoder@gmail.com>
10456
10457
	* util/grub-install.in: Fix nvram call for PreP.
10458
10459
2012-03-28  Vladimir Serbinenko  <phcoder@gmail.com>
10460
10461
	* grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Degrade
10462
	the error when some elements are missing into a warning.
10463
10464
2012-03-28  Vladimir Serbinenko  <phcoder@gmail.com>
10465
10466
	* grub-core/normal/charset.c (bidi_line_wrap): Fix out-of-range swap.
10467
10468
2012-03-28  Colin Watson  <cjwatson@ubuntu.com>
10469
10470
	* docs/grub.texi (Invoking grub-probe): New section.
10471
	Reported by: Filipus Klutiero.  Fixes Debian bug #666031.
10472
10473
2012-03-27  Vladimir Serbinenko  <phcoder@gmail.com>
10474
10475
	Fix tab and wide character handling in editor and menu.
10476
10477
	* grub-core/normal/charset.c (grub_unicode_aglomerate_comb): Don't
10478
	agglomerate control characters with combining marks.
10479
	(bidi_line_wrap): Allow break on tab.
10480
	(grub_unicode_get_comb_start): New function.
10481
	* grub-core/normal/menu_entry.c: Restructure to handle wide characters
10482
	and tab correctly.
10483
	* grub-core/normal/menu_text.c (print_entry): Replace \n, \r, \b and \e
10484
	with a space.
10485
	* grub-core/normal/term.c (print_ucs4_terminal): New argument
10486
	fixed_tab_size. All users updated.
10487
	* include/grub/term.h (GRUB_TERM_TAB_WIDTH): New const.
10488
	(grub_term_getcharwidth): Handle \t.
10489
	* include/grub/unicode.h (grub_unicode_glyph_dup): Fix allocation
10490
	and copy.
10491
10492
2012-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
10493
10494
	Handle big-endian mdraid.
10495
10496
	* Makefile.util.def (libgrubkern): Add mdraid_linux_be.c.
10497
	* grub-core/Makefile.core.def (mdraid09_be): New module.
10498
	* grub-core/disk/mdraid_linux.c: Use grub_md_to_cpu* and grub_cpu_to_md*
10499
	rather than grub_le_to_cpu* and grub_cpu_to_le*.
10500
	* grub-core/disk/mdraid_linux_be.c: New file.
10501
10502
2012-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
10503
10504
	* grub-core/gettext/gettext.c (GRUB_MOD_INIT): Handle errors.
10505
10506
2012-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
10507
10508
	* util/getroot.c (grub_make_system_path_relative_to_its_root): Fix
10509
	missing quotes which caused confusion among translators.
10510
10511
2012-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
10512
10513
	* util/grub-mkconfig_lib.in: Fix typo.
10514
10515
2012-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
10516
10517
	* grub-core/script/argv.c (grub_script_argv_split_append): Skip leading
10518
	spaces.
10519
	* tests/grub_script_leading_whitespace.in: New file.
10520
	* Makefile.util.def (grub_script_leading_whitespace): New test.
10521
10522
2012-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
10523
10524
	* grub-core/kern/dl.c (grub_dl_add): Make global in order for gdb_grub
10525
	to work.
10526
10527
2012-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
10528
10529
	* grub-core/fs/jfs.c (grub_jfs_label): Use first label if second one
10530
	starts with control character.
10531
10532
2012-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
10533
10534
	* grub-core/gdb/cstub.c (grub_gdb_inbuf): Increase the size to avoid
10535
	overflow.
10536
	(grub_gdb_outbuf): Likewise.
10537
10538
2012-03-19  Vladimir Serbinenko  <phcoder@gmail.com>
10539
10540
	* grub-core/commands/menuentry.c (grub_normal_add_menu_entry): Add
10541
	zero terminator. Fixes a crash.
10542
10543
2012-03-11  Vladimir Serbinenko  <phcoder@gmail.com>
10544
10545
	* grub-core/loader/i386/linux.c (allocate_pages): Don't allocate
10546
	beyond 4 GiB.
10547
	(grub_cmd_linux): Use GRUB_LINUX_BZIMAGE_ADDR for non-relocatable
10548
	images independently of preffered adderss field.
10549
10550
2012-03-11  Vladimir Serbinenko  <phcoder@gmail.com>
10551
10552
	* grub-core/commands/i386/pc/play.c: Improve TRANSLATORS comments.
10553
	* grub-core/commands/regexp.c: Likewise.
10554
	* grub-core/loader/i386/linux.c: Likewise.
10555
	* grub-core/partmap/msdos.c: Likewise.
10556
	* grub-core/script/execute.c: Likewise.
10557
	* grub-core/term/gfxterm.c: Likewise.
10558
10559
2012-03-11  Vladimir Serbinenko  <phcoder@gmail.com>
10560
10561
	Add variable parsing in $"..." and fix several mismatches with bash.
10562
10563
	* Makefile.util.def (grub_script_gettext): New test.
10564
	* grub-core/script/execute.c (parse_string): New function.
10565
	(gettext_append): Likewise.
10566
	(grub_script_arglist_to_argv): Use gettext_append.
10567
	* grub-core/script/yylex.l: Fix slash and newline handling in $"...".
10568
	* tests/grub_script_gettext.in: New file.
10569
10570
2012-03-11  Vladimir Serbinenko  <phcoder@gmail.com>
10571
10572
	Fix handling of leading spaces in scripts.
10573
10574
	* grub-core/normal/cmdline.c (grub_cmdline_get): Don't strip leading
10575
	spaces.
10576
	* grub-core/normal/main.c (grub_file_getline): Remove all preprocessing
10577
	other than skipping \r. All users updated.
10578
	* tests/grub_script_echo1.in: Add space-related tests.
10579
	* util/grub-menulst2cfg.c (main): Remove useless space skipping.
10580
10581
2012-03-11  Vladimir Serbinenko  <phcoder@gmail.com>
10582
10583
	* grub-core/commands/cat.c (grub_cmd_cat): Fix termination key check.
10584
10585
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10586
10587
	* configure.ac: Bump up the version to beta2.
10588
10589
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10590
10591
	Fix gettext reload bugs (e.g. inability to disable gettext
10592
	once enabled).
10593
10594
	* grub-core/gettext/gettext.c: Encapsulate all static variables in
10595
	main_context and secondary_context. All functions updated.
10596
	(grub_gettext_translate): Rename to ...
10597
	(grub_gettext_translate_real): ... this. Return NULL on failed
10598
	translate.
10599
	(grub_gettext_translate): Handle secondary context.
10600
	(grub_gettext_delete_list): Close file and zero-out the context.
10601
	(grub_mofile_open): Don't call grub_gettext_delete_list.
10602
	Don't close file.
10603
	(grub_gettext_init_ext): Call grub_gettext_init_ext. Skip loading
10604
	if locale="" to avoid pointless error message.
10605
	(grub_gettext_env_write_lang): Update lang even if load fails.
10606
	Handle secondary context.
10607
	(grub_gettext_reread_prefix): New function.
10608
	(read_main): Likewise.
10609
	(read_secondary): Likewise.
10610
	(GRUB_MOD_INIT): Handle secondary context. Hook and export variables.
10611
	(GRUB_MOD_FINI): Handle secondary context. Don't close file.
10612
	* grub-core/normal/main.c (read_lists): Call grub_gettext_reread_prefix.
10613
	* include/grub/normal.h (grub_gettext_reread_prefix): New proto.
10614
10615
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10616
10617
	* configure.ac: Decrease warning level to avoid spurious warnings and
10618
	to be able to compile with GCC 4.2.
10619
	* Makefile.util.def: Remove -Wno-error=logical-op.
10620
10621
2012-03-10  William Bittner <william.bittner@gmail.com>
10622
10623
	* util/import_unicode.py: Add missing brackets around string for
10624
	python 3 support.
10625
10626
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10627
10628
	Fix efi chainloader on network root.
10629
10630
	* grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Handle
10631
	network devices.
10632
	* grub-core/net/drivers/efi/efinet.c (grub_efinet_get_device_handle):
10633
	New function.
10634
10635
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10636
10637
	* grub-core/gfxmenu/gui_progress_bar.c (grub_gui_progress_bar): Remove
10638
	unused show_text member.
10639
	* docs/grub.texi: Document "text" property.
10640
10641
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10642
10643
	* grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Fix format
10644
	in dprintf.
10645
10646
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10647
10648
	Fix IMSM handling on Fedora.
10649
10650
	* util/getroot.c (grub_util_is_imsm): New function.
10651
	(grub_util_get_dev_abstraction): Treat IMSM as simple device, not RAID.
10652
10653
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10654
10655
	* Makefile.am: Strip gold section.
10656
	* conf/Makefile.common: Likewise.
10657
	* gentpl.py: Likewise.
10658
	* grub-core/Makefile.core.def: Likewise.
10659
	* grub-core/genmod.sh.in: Likewise.
10660
10661
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10662
10663
	* util/grub.d/10_linux.in: Use stat if grub-probe on root fails.
10664
	* util/grub.d/20_linux_xen.in: Likewise.
10665
	Based on Debian patch.
10666
10667
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10668
10669
	* util/grub.d/10_linux.in: Fix syntax error resulting in
10670
	Richard Laager's patch.
10671
	* util/grub.d/20_linux_xen.in: Propagate Richard Laager's patch.
10672
10673
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10674
10675
	* tests/partmap_test.in: Replace qemu-img usage with dd to decrease
10676
	dependencies.
10677
10678
2012-03-10  Richard Laager <rlaager@wiktel.com>
10679
10680
	* util/grub.d/10_linux.in: Fix ZFS root passing.
10681
10682
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10683
10684
	* grub-core/commands/videoinfo.c: Add TRANSLATORS comments.
10685
	* grub-core/commands/xnu_uuid.c: Likewise.
10686
	* grub-core/loader/efi/appleloader.c: Likewise.
10687
	* grub-core/script/execute.c: Likewise.
10688
	* grub-core/script/main.c: Likewise.
10689
	* util/grub-mkfont.c: Likewise.
10690
10691
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10692
10693
	* util/grub-mkfont.c (options): Use more appropriate "select" that
10694
	"set" for face index.
10695
10696
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10697
10698
	* util/grub-editenv.c (options): Gettextize command summaries.
10699
10700
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10701
10702
	* grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Use
10703
	"out of memory" error messagge.
10704
10705
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10706
10707
	* grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Add scanning
10708
	of diskfilter for diskfilter on diskfilter support.
10709
10710
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10711
10712
	* util/getroot.c (exec_pipe): Ensure that the child is not localised.
10713
10714
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10715
10716
	* util/grub-install.in: Check for themes/starfield/theme.txt and not
10717
	themes/starfield.
10718
10719
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10720
10721
	* grub-core/gnulib/regcomp.c (regerror): Fix out-of-range array lookup.
10722
10723
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10724
10725
	* grub-core/gdb/i386/idt.c (grub_gdb_breakpoint): Remove old debug code.
10726
10727
2012-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
10728
10729
	* grub-core/commands/hashsum.c (grub_cmd_hashsum): Remove dot at the end
10730
	of error message.
10731
10732
2012-03-09  Vladimir Serbinenko  <phcoder@gmail.com>
10733
10734
	* util/grub-install.in: Fix install non-PreP IEEE1275 install.
10735
10736
2012-03-09  Vladimir Serbinenko  <phcoder@gmail.com>
10737
10738
	* grub-core/commands/i386/pc/sendkey.c (GRUB_MOD_INIT): Fix confusing
10739
	message.
10740
	* util/grub-install.in: Fix and gettextize error message.
10741
10742
2012-03-08  Vladimir Serbinenko  <phcoder@gmail.com>
10743
10744
	* util/grub-fstest.c (options): Replace N with NUM and S with STRING.
10745
	Gettextize.
10746
	* util/grub-mount.c (options): Likewise.
10747
10748
2012-03-08  Vladimir Serbinenko  <phcoder@gmail.com>
10749
10750
	* grub-core/commands/probe.c (options): Replace VAR with VARNAME and
10751
	gettextize.
10752
	* grub-core/commands/search_wrap.c (options): Likewise.
10753
10754
2012-03-08  Vladimir Serbinenko  <phcoder@gmail.com>
10755
10756
	* grub-core/normal/charset.c (bidi_line_wrap): Fix a spurious warning.
10757
10758
2012-03-08  Vladimir Serbinenko  <phcoder@gmail.com>
10759
10760
	* grub-core/boot/i386/pc/startup_raw.S (multiboot_trampoline): Fix
10761
	size calculation.
10762
	* grub-core/kern/i386/realmode.S (realidt): Assume default BIOS IDT if
10763
	none is known.
10764
10765
2012-03-08  Vladimir Serbinenko  <phcoder@gmail.com>
10766
10767
	* grub-core/net/net.c (grub_net_addr_to_str): Don't translate
10768
	"temporary" since it's used in identifier and is limited in space.
10769
10770
2012-03-08  Vladimir Serbinenko  <phcoder@gmail.com>
10771
10772
	* po/POTFILES.in: Regenerate. Include *.h since they contain
10773
	translatable strings as well.
10774
10775
2012-03-08  Vladimir Serbinenko  <phcoder@gmail.com>
10776
10777
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Add missing
10778
	byte-swap on big-endian.
10779
	Reported by: Lennart Sorensen
10780
10781
2012-03-07  Vladimir Serbinenko  <phcoder@gmail.com>
10782
10783
	* grub-core/loader/i386/linux.c (prot_init_space): New variable.
10784
	(allocate_pages): Improve dprintf.
10785
	(grub_cmd_linux): Fill prot_init_space. Fix improper usage of
10786
	code32_start. Fill code32_start and kernel_alignment in params.
10787
	(grub_cmd_initrd): Use prot_init_space.
10788
10789
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10790
10791
	* util/grub-mkstandalone.in: Propagate grub-mkimage.c change.
10792
10793
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10794
10795
	* util/grub-install.in: Add missing dot at the end of sentence.
10796
10797
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10798
10799
	* grub-core/commands/videoinfo.c: Add TRANSLATORS comments.
10800
	* grub-core/commands/videotest.c: Likewise.
10801
	* grub-core/loader/i386/linux.c: Likewise.
10802
10803
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10804
10805
	* grub-core/commands/acpi.c (options): Fix a dot in the middle of the
10806
	sentence.
10807
	Reported by: Milo Casagrande.
10808
10809
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10810
10811
	* grub-core/commands/acpi.c: Add TRANSLATORS comments.
10812
	* grub-core/commands/gptsync.c: Likewise.
10813
	* grub-core/commands/hashsum.c: Likewise.
10814
	* grub-core/commands/i386/pc/sendkey.c: Likewise.
10815
	* grub-core/commands/legacycfg.c: Likewise.
10816
	* grub-core/io/gzio.c: Likewise.
10817
	* grub-core/net/net.c: Likewise.
10818
	* grub-core/term/gfxterm.c: Likewise.
10819
	* grub-core/term/terminfo.c: Likewise.
10820
	* grub-core/tests/test_blockarg.c: Likewise.
10821
	* grub-core/video/video.c: Likewise.
10822
	* util/grub-install.in: Likewise.
10823
	* util/grub-mkfont.c: Likewise.
10824
10825
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10826
10827
	* util/grub-mkimage.c (help_filter): Add missing capitalisation.
10828
10829
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10830
10831
	* grub-core/commands/search_wrap.c (options): Fix a typo.
10832
	Reported by: David Prévot.
10833
10834
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10835
10836
	* util/grub-kbdcomp.in: Change "layout" to "keyboard layout" in
10837
	description.
10838
10839
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10840
10841
	* util/grub-script-check.c (main): Fix a syntax error message which was
10842
	unclear.
10843
10844
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10845
10846
	* util/grub-mkrescue.in (usage): Fix ROM capitalisation.
10847
10848
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10849
10850
	* grub-core/commands/search_wrap.c (options): Fix wrong copy-paste in
10851
	messages.
10852
10853
2012-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
10854
10855
	* util/grub-fstest.c (options): Remove OPTION_ARG_OPTIONAL from options
10856
	without argument.
10857
	* util/grub-mount.c (options): Likewise.
10858
10859
2012-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
10860
10861
	* util/grub-mkimage.c (generate_image): Unify diskboot.img size message.
10862
10863
2012-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
10864
10865
	* grub-core/net/http.c: Add TRANSLATORS comments.
10866
	* grub-core/normal/cmdline.c: Likewise.
10867
	* grub-core/normal/misc.c: Likewise.
10868
	* grub-core/partmap/msdos.c: Likewise.
10869
	* grub-core/parttool/msdospart.c: Likewise.
10870
	* grub-core/script/execute.c: Likewise.
10871
	* grub-core/script/main.c: Likewise.
10872
	* grub-core/term/terminfo.c: Likewise.
10873
	* grub-core/video/bitmap.c: Likewise.
10874
	* util/grub-install.in: Likewise.
10875
	* util/grub-mkimage.c: Likewise.
10876
	* util/grub-mklayout.c: Likewise.
10877
	* util/grub-setup.c: Likewise.
10878
10879
2012-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
10880
10881
	* util/grub-mount.c (fuse_init): Unify cryptomount and loopback messages
10882
	with similar messages in grub-fstest.
10883
10884
2012-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
10885
10886
	* util/grub-install.in: Unify "option requires an argument" message
10887
	with similar messages in other files.
10888
	* util/grub-mkconfig.in: Likewise.
10889
10890
2012-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
10891
10892
	* util/grub-set-default.in: Replace printf with gettext_printf (the
10893
	string in in question is already translated from grub-reboot)
10894
10895
2012-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
10896
10897
	* configure.ac: Bump up the version to beta1.
10898
10899
2012-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
10900
10901
	* grub-core/loader/i386/linux.c (allocate_pages): Fix handling of the
10902
	case when min_align = 0.
10903
10904
2012-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
10905
10906
	* grub-core/normal/charset.c (bidi_line_wrap): Fix a spurious warning
10907
	and fix a case when line_start overflows.
10908
10909
2012-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
10910
10911
	* util/grub-reboot.in (usage): Mention id posibility.
10912
	* util/grub-set-default.in (usage): Likewise.
10913
10914
2012-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
10915
10916
	* include/grub/misc.h (ALIGN_UP_OVERHEAD): New define.
10917
	* grub-core/loader/i386/linux.c (grub_cmd_initrd): Align initrds at 4.
10918
	* grub-core/loader/i386/pc/linux.c (grub_cmd_initrd): Likewise.
10919
	* grub-core/loader/ia64/efi/linux.c (grub_cmd_initrd): Likewise.
10920
	* grub-core/loader/mips/linux.c (grub_cmd_initrd): Likewise.
10921
	* grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_initrd): Likewise.
10922
	* grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_initrd): Likewise.
10923
10924
2012-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
10925
10926
	* grub-core/commands/menuentry.c (options): Remove
10927
	GRUB_ARG_OPTION_REPEATABLE.
10928
	Reported by: Andreas Vogel
10929
10930
2012-03-04  Andreas Vogel <Andreas.Vogel@anvo-it.de>
10931
10932
	* grub-core/normal/main.c (grub_normal_free_menu): Fix memory leak.
10933
10934
2012-03-04  Hideki EIRAKU <hdk1983@gmail.com>
10935
10936
	* grub-core/normal/menu_entry.c (kill_line): Fix a crash and off-by-one
10937
	error.
10938
10939
2012-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
10940
10941
	Use sort -V by the idea of Georgi Georgiev.
10942
10943
	* util/grub-mkconfig_lib.in (version_sort): New function.
10944
	(version_test_numeric): Use version_sort.
10945
10946
2012-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
10947
10948
	Use submenus in grub-mkconfig.
10949
10950
	* util/grub-mkconfig.in: Define GRUB_ACTUAL_DEFAULT.
10951
	* util/grub-mkconfig_lib.in (grub_quote): New function.
10952
	(gettext_printf): Use gettext and not gettext_quoted to fix several
10953
	messages.
10954
	* util/grub.d/10_hurd.in: Use submenus.
10955
	* util/grub.d/10_kfreebsd.in: Likewise.
10956
	* util/grub.d/10_linux.in: Likewise.
10957
	* util/grub.d/10_netbsd.in: Likewise.
10958
	* util/grub.d/20_linux_xen.in: Likewise.
10959
	* util/grub.d/30_os-prober.in: Likewise.
10960
	* util/grub.d/10_illumos.in: Add missing quoting.
10961
	* util/grub.d/10_windows.in: Likewise.
10962
10963
2012-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
10964
10965
	Fix menu title instability bug.
10966
10967
	* grub-core/commands/menuentry.c (options): New option --id.
10968
	(grub_normal_add_menu_entry): New argument id. All users updated.
10969
	(grub_cmd_menuentry): Handle --id.
10970
	(grub_menu_init): Accept unknown arguments.
10971
	* grub-core/normal/main.c (features): Add feature_menuentry_id and
10972
	feature_menuentry_options.
10973
	* grub-core/normal/menu.c (grub_menu_execute_entry): Use id for
10974
	saved_entry.
10975
	(get_entry_number): Match with id as well.
10976
	* include/grub/menu.h (grub_menu_entry): New member id.
10977
	* util/grub-mkconfig_lib.in (grub_get_device_id): New function.
10978
	* util/grub.d/00_header.in: Define menuentry_id_option.
10979
	* util/grub.d/10_hurd.in: Define id.
10980
	* util/grub.d/10_illumos.in: Likewise.
10981
	* util/grub.d/10_kfreebsd.in: Likewise.
10982
	* util/grub.d/10_linux.in: Likewise.
10983
	* util/grub.d/10_netbsd.in: Likewise.
10984
	* util/grub.d/10_windows.in: Likewise.
10985
	* util/grub.d/20_linux_xen.in: Likewise.
10986
	* util/grub.d/30_os-prober.in: Likewise.
10987
10988
2012-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
10989
10990
	* grub-core/script/execute.c (grub_script_return): Replace ambiguous
10991
	"scope" with "body".
10992
10993
2012-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
10994
10995
	* include/grub/i386/linux.h (linux_kernel_header): Fix init_size type.
10996
	* grub-core/loader/i386/linux.c (grub_cmd_linux): Differentiate between
10997
	prot_size and prot_file_size.
10998
10999
2012-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
11000
11001
	* grub-core/disk/diskfilter.c (is_lv_readable): New argument "easily".
11002
	All users updated. If easily=1 require raid-5/-6 to be full.
11003
	(is_node_readable): Likewise.
11004
	(scan_devices): Scan incomplete but readable LVs at the end.
11005
	(grub_diskfilter_memberlist): Pull missing devices.
11006
	(insert_array): Skip scanning until device is complete or scan is
11007
	done otherwise.
11008
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Fix wrong
11009
	check.
11010
	* include/grub/diskfilter.h (grub_diskfilter_lv): New member scanned.
11011
	* util/raid.c (grub_util_raid_getmembers): Handle "removed" disks.
11012
11013
2012-03-03  Matthew Garrett  <mjg@redhat.com>
11014
2012-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
11015
11016
	Avoid EFI boot services when loading Linux.
11017
11018
	* grub-core/lib/i386/relocator.c (grub_relocator32_boot): New argument
11019
	avoid_efi_bootservices. All users updated.
11020
	* grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align): New
11021
	argument avoid_efi_bootservices. All users updated.
11022
	Use grub_efi_mmap_iterate on EFI, grub_mmap_iterate if available.
11023
	* grub-core/loader/i386/linux.c (allocate_pages): New arguments
11024
	align, min_align, relocatable, prefered_address. All users updated.
11025
	Allocate avoiding boot services if kernel is relocatable.
11026
	(grub_cmd_linux): Check if kernel is relocatable.
11027
	* grub-core/mmap/efi/mmap.c (grub_machine_mmap_iterate): Move most to ..
11028
	(grub_efi_mmap_iterate): ... here. New argument avoid_efi_boot_services.
11029
	Skip GRUB_EFI_BOOT_SERVICES_DATA and GRUB_EFI_BOOT_SERVICES_CODE if
11030
	avoid_efi_boot_services.
11031
	(grub_machine_mmap_iterate): Wrap grub_efi_mmap_iterate.
11032
	* include/grub/i386/linux.h (linux_kernel_header): Update to 2.10.
11033
	(linux_kernel_params): Likewise.
11034
11035
2012-03-03  Matthew Garrett  <mjg@redhat.com>
11036
2012-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
11037
11038
	Use EDID on EFI.
11039
11040
	* grub-core/kern/efi/efi.c (grub_efi_get_variable): New argument
11041
	datasize_out.
11042
	* grub-core/video/efi_gop.c (check_protocol): Check that GOP has usable
11043
	modes. Set gop_handle.
11044
	(grub_video_gop_get_edid): New function.
11045
	(grub_gop_get_preferred_mode): Likewise.
11046
	(grub_video_gop_setup): Use grub_gop_get_preferred_mode.
11047
	(grub_video_efi_gop_adapter): Set .get_edid.
11048
	* include/grub/efi/edid.h: New file.
11049
	* include/grub/efi/efi.h (grub_efi_get_variable): Update proto.
11050
11051
2012-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
11052
11053
	* util/grub-install.in: Load efivars unconditionally.
11054
11055
2012-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
11056
11057
	* po/Rules-piglatin: Change suffix from .po-update-en to
11058
	.po-update-en-piglatin.
11059
11060
2012-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
11061
11062
	Add a pig farm.
11063
11064
	* po/piglatin.sed: New file.
11065
	* po/en@piglatin.header: Likewise.
11066
	* po/Rules-piglatin: Likewise.
11067
	* po/README: Add en@piglatin to autogenerated languages.
11068
11069
2012-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
11070
11071
	* grub-core/commands/date.c (GRUB_MOD_INIT): Remove non-uniform
11072
	"Command for ...".
11073
	* grub-core/commands/hdparm.c (options): Use "Display" rather than
11074
	"Check" since we don't check anything.
11075
	* grub-core/commands/i386/cpuid.c (options): Clarify that long mode
11076
	is 64-bit one.
11077
	* grub-core/commands/search_wrap.c (options): Clarify the conditions.
11078
	* grub-core/disk/geli.c (grub_md_sha256_real): Fix typo.
11079
	(grub_md_sha512_real): Likewise.
11080
11081
2012-03-03  Vladimir Serbinenko  <phcoder@gmail.com>
11082
11083
	* grub-core/commands/gptsync.c: Fix typographic quoting.
11084
	* grub-core/commands/ieee1275/suspend.c: Likewise.
11085
	* grub-core/commands/parttool.c: Likewise.
11086
	* grub-core/commands/search_wrap.c: Likewise.
11087
	* grub-core/commands/videoinfo.c: Likewise.
11088
	* grub-core/gfxmenu/gui_label.c: Likewise.
11089
	* grub-core/hello/hello.c: Likewise.
11090
	* grub-core/kern/emu/main.c: Likewise.
11091
	* grub-core/net/net.c: Likewise.
11092
	* grub-core/normal/menu.c: Likewise.
11093
	* grub-core/normal/menu_text.c: Likewise.
11094
	* grub-core/normal/misc.c: Likewise.
11095
	* util/grub-editenv.c: Likewise.
11096
	* util/grub-install.in: Likewise.
11097
	* util/grub-kbdcomp.in: Likewise.
11098
	* util/grub-mkconfig.in: Likewise.
11099
	* util/grub-mknetdir.in: Likewise.
11100
	* util/grub-mkrescue.in: Likewise.
11101
	* util/grub-mkstandalone.in: Likewise.
11102
	* util/grub-reboot.in: Likewise.
11103
	* util/grub-set-default.in: Likewise.
11104
	* util/grub-setup.c: Likewise.
11105
	* util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
11106
11107
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11108
11109
	* grub-core/commands/acpihalt.c: Add TRANSLATORS comments.
11110
	* grub-core/commands/keystatus.c: Likewise.
11111
	* grub-core/commands/loadenv.c: Likewise.
11112
	* grub-core/commands/probe.c: Likewise.
11113
	* grub-core/commands/regexp.c: Likewise.
11114
	* grub-core/commands/true.c: Likewise.
11115
	* grub-core/commands/videoinfo.c: Likewise.
11116
	* grub-core/disk/cryptodisk.c: Likewise.
11117
	* grub-core/disk/ldm.c: Likewise.
11118
	* grub-core/disk/loopback.c: Likewise.
11119
	* grub-core/disk/luks.c: Likewise.
11120
	* grub-core/fs/zfs/zfsinfo.c: Likewise.
11121
	* grub-core/kern/disk.c: Likewise.
11122
	* grub-core/kern/emu/hostdisk.c: Likewise.
11123
11124
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11125
11126
	* grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Add TRANSLATORS comment.
11127
	* util/grub-install.in: Add missing quote in the comment.
11128
11129
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11130
11131
	* grub-core/commands/i386/pc/drivemap.c: Add TRANSLATORS comments.
11132
	* grub-core/commands/lsmmap.c: Likewise.
11133
	* grub-core/commands/minicmd.c: Likewise.
11134
	* grub-core/commands/mips/loongson/lsspd.c: Likewise.
11135
	* grub-core/commands/regexp.c: Likewise.
11136
	* grub-core/gdb/gdb.c: Likewise.
11137
	* grub-core/term/gfxterm.c: Likewise.
11138
	* util/grub-mkconfig.in: Likewise.
11139
	* util/grub-mkfont.c: Likewise.
11140
	* util/grub-mklayout.c: Likewise.
11141
	* util/grub-mknetdir.in: Likewise.
11142
	* util/grub-mkrescue.in: Likewise.
11143
	* util/grub.d/30_os-prober.in: Likewise.
11144
11145
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11146
11147
	* grub-core/commands/videoinfo.c (hook): Replace "Direct"
11148
	with "Direct color" and "Packed" with "Packed pixel".
11149
	(grub_cmd_videoinfo): Simplify legend.
11150
11151
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11152
11153
	* util/getroot.c (grub_make_system_path_relative_to_its_root): Fix
11154
	absolutely unclear error message.
11155
11156
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11157
11158
	* util/grub-mkstandalone.in: Remove confusing leftover print.
11159
11160
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11161
11162
	* grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Add TRANSLATORS
11163
	comments.
11164
	* grub-core/gdb/gdb.c (grub_cmd_gdbstub): Likewise.
11165
	(GRUB_MOD_INIT): Likewise.
11166
	* grub-core/loader/i386/linux.c (grub_cmd_linux): Clarify that it's
11167
	VGA mode.
11168
	* grub-core/net/net.c (grub_net_route_address): Add TRANSLATORS
11169
	comments.
11170
	* util/grub-install.in (usage): Likewise.
11171
	Spell ID in whole letters.
11172
	Add missing ending dot.
11173
	Quote variables.
11174
	* util/grub-reboot.in: Fix capitalisation.
11175
	* util/grub-set-default.in: Likewise.
11176
11177
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11178
11179
	* util/getroot.c (strip_extra_slashes) [CYGWIN]: #ifdef-out.
11180
	(exec_pipe) [CYGWIN || MINGW32]: Likewise.
11181
	(find_root_devices_from_poolname) [CYGWIN || MINGW32]: Likewise.
11182
	(find_root_devices_from_libzfs) [CYGWIN || MINGW32]: Likewise.
11183
	Disable -Werror for -Wdeprecated-declarations.
11184
	(grub_guess_root_devices) [CYGWIN || MINGW32]: #ifdef-out.
11185
	(get_dm_uuid) [!HAVE_DEVICE_MAPPER]: Likewise.
11186
	(grub_util_get_dm_abstraction) [! __linux__]: #ifdef-out.
11187
	(grub_util_get_grub_dev): Make luks handling dependent on
11188
	HAVE_DEVICE_MAPPER and not __linux__.
11189
	(get_win32_path): Fix format security.
11190
	(grub_find_zpool_from_dir) [CYGWIN || MINGW32]: #ifdef-out.
11191
	(grub_make_system_path_relative_to_its_root) [CYGWIN || MINGW32]:
11192
	Don't try grub_find_zpool_from_dir.
11193
	(grub_make_system_path_relative_to_its_root) [!__linux__]:
11194
	#ifdef-out paresdir.
11195
11196
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11197
11198
	* util/grub-pe2elf.c (usage): Add missing noreturn.
11199
	(write_section_data): Rename name to shname to avoid shadowing.
11200
	(write_symbol_table): Rename name to symname to avoid shadowing.
11201
	Fix write_reloc_section call.
11202
11203
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11204
11205
	* grub-core/boot/i386/pc/startup_raw.S: Move decompressor_end to .bss
11206
	to ensure that it's after the last byte of .text.
11207
11208
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11209
11210
	* util/ieee1275/ofpath.c (my_isdigit): New function.
11211
	(trailing_digits): Use my_isdigit.
11212
	(strip_trailing_digits): Likewise.
11213
11214
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11215
11216
	* util/resolve.c (read_dep_list): Use grub_isspace instead of isspace.
11217
	* grub-core/kern/emu/hostdisk.c (read_device_map): Likewise.
11218
11219
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11220
11221
	* grub-core/kern/i386/pc/startup.S: Define __start.
11222
11223
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11224
11225
	* gentpl.py (kernel): Remove the use of TARGET_OBJ2ELF after strip since
11226
	strip already transforms he format.
11227
11228
2012-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
11229
11230
	* conf/i386-pc-cygwin-img-ld.sc: Define also _edata and __edata.
11231
11232
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11233
11234
	* util/grub-install.in: Add missing gettext init.
11235
	* util/grub-kbdcomp.in: Likewise.
11236
	* util/grub-mkconfig.in: Likewise.
11237
	* util/grub-mknetdir.in: Likewise.
11238
	* util/grub-mkrescue.in: Likewise.
11239
	* util/grub-mkstandalone.in: Likewise.
11240
	* util/grub-reboot.in: Likewise.
11241
	* util/grub-set-default.in: Likewise.
11242
	* util/grub.d/00_header.in: Likewise.
11243
	* util/grub.d/10_hurd.in: Likewise.
11244
	* util/grub.d/10_windows.in: Likewise.
11245
	* util/grub.d/30_os-prober.in: Likewise.
11246
	* util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
11247
11248
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11249
11250
	* po/Rules-swiss: Fix header comment.
11251
11252
2012-02-29  Andreas Vogel <anvoit>
11253
11254
	* grub-core/kern/misc.c (grub_xvasprintf): Fix an exit path which
11255
	resulted in leak of arguments.
11256
11257
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11258
11259
	* grub-core/boot/i386/pc/startup_raw.S: Use separate
11260
	reed_solomon_size const definition instead of computing it since
11261
	Apple assembler doesn't support the later.
11262
11263
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11264
11265
	* gentpl.py (kernel): Rewrite Apple part.
11266
11267
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11268
11269
	* include/grub/kernel.h (FOR_MODULES): Check module magic.
11270
11271
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11272
11273
	* util/grub-mkimagexx.c (locate_sections): Support non-standard
11274
	ELF section gap.
11275
	(load_image): Likewise.
11276
11277
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11278
11279
	* configure.ac: Fix a typo in previous commit.
11280
11281
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11282
11283
	Don't add -Wl,-N on Apple platform.
11284
11285
	* configure.ac (TARGET_LDFLAGS_OLDMAGIC): New subst.
11286
	* conf/Makefile.common: Use TARGET_LDFLAGS_OLDMAGIC instead of -Wl,-N
11287
11288
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11289
11290
	* grub-core/Makefile.core.def (lzma_decompress): Use
11291
	TARGET_IMG_BASE_LDOPT rather than hardcoding -Wl,-Ttext.
11292
11293
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11294
11295
	* grub-core/genmod.sh.in: Rewrite the Apple part.
11296
11297
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11298
11299
	* grub-core/loader/machoXX.c (grub_macho_load): Fix signed vs unsigned
11300
	comparison.
11301
11302
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11303
11304
	* acinclude.m4 (grub_CHECK_PIC): New test.
11305
	* configure.ac: Add -fno-PIC to TARGET_CFLAGS if -fPIC is default.
11306
11307
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11308
11309
	* include/grub/libgcc.h (__STDC_VERSION__): Define if it's not yet so
11310
	to avoid the warning.
11311
11312
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11313
11314
	* grub-core/boot/i386/pc/diskboot.S (firstlist): Rename to ...
11315
	(LOCAL(firstlist)): ... this. Move it before the firstlist and not
11316
	after. All users updated.
11317
11318
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11319
11320
	Use the common size routine in hostfs so we can read disks as well.
11321
11322
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Rename to ..
11323
	(grub_util_get_fd_size): ... this. Return size in bytes.
11324
	All users updated.
11325
	* grub-core/kern/emu/hostfs.c (grub_hostfs_open): Use
11326
	grub_util_get_fd_size.
11327
11328
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11329
11330
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__APPLE__]:
11331
	Add blocksize retrieval.
11332
11333
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11334
11335
	* configure.ac: Restore CFLAGS after efiemu check.
11336
11337
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11338
11339
	* configure.ac: Move -fnested-functions to CPPFLAGS to workaround
11340
	Apple bug.
11341
11342
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11343
11344
	* grub-core/Makefile.am (MACHO2IMG): Add missing variable.
11345
11346
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11347
11348
	* grub-core/commands/i386/pc/halt.c (grub_halt): Add noreturn attribute.
11349
	(grub_cmd_halt): Likewise.
11350
11351
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11352
11353
	* grub-core/lib/i386/relocator16.S: Declare LOCAL(relocator16_end)
11354
	for local arithmetics.
11355
	Break %sp init into 2 instructions.
11356
	Add 0 byte at the end.
11357
11358
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11359
11360
	* grub-core/disk/diskfilter.c (read_segment): Initialise err
11361
	before loops.
11362
11363
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11364
11365
	* grub-core/lib/xzembed/xz_dec_stream.c (hash_validate): Use void *
11366
	for context.
11367
11368
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11369
11370
	* grub-core/disk/ldm.c (make_vg): Init part.name.
11371
	(grub_ldm_detect): Silence spurious warning.
11372
	(grub_util_is_ldm): Likewise.
11373
11374
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11375
11376
	* grub-core/loader/i386/xnu.c (grub_xnu_boot): Init fsbfreq to
11377
	sane value to avoid a spurious warning.
11378
11379
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11380
11381
	* include/grub/dl.h: Switch from APPLE_CC to __APPLE__.
11382
	(GRUB_MOD_LICENSE) [ASM_FILE]: Make into macro. All users updated.
11383
11384
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11385
11386
	* include/grub/symbol.h (EXT_C) [!ASM_FILE]: Redefine with strings.
11387
	* grub-core/lib/i386/backtrace.c (grub_backtrace): Use EXT_C.
11388
11389
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11390
11391
	* grub-core/gdb/i386/machdep.S: Use VARIABLE and EXT_C instead of
11392
	hardcoding the relevant info.
11393
11394
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11395
11396
	* grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len): Add
11397
	missing const qualifiers.
11398
	* grub-core/gnulib/argp-fmtstream.h (__argp_get_display_len): Likewise.
11399
11400
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11401
11402
	* util/getroot.c [__APPLE__]: Add missing includes.
11403
	(grub_util_biosdisk_is_floppy): Fix usage of undefined variable.
11404
11405
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11406
11407
	* util/grub-mkimage.c (generate_image): Silence spurious warning.
11408
11409
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11410
11411
	* util/ieee1275/ofpath.c: Rename devname to sys_devname everywhere to
11412
	avoid conflicts.
11413
11414
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11415
11416
	* util/ieee1275/grub-ofpathname.c: Add missing config.h include.
11417
11418
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11419
11420
	* util/grub-setup.c (setup) [!__linux__]: Add missing file declaration
11421
	and grub_file_close call.
11422
11423
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11424
11425
	Add LZSS Mach-O support (needed for new xnu kernelcache).
11426
11427
	* grub-core/Makefile.core.def (xnu): Add file lzss.c
11428
	* grub-core/loader/lzss.c: New file.
11429
	* grub-core/loader/xnu.c (grub_xnu_load_driver): Close binaryfile
11430
	on Mach-O open failure.
11431
	* grub-core/loader/macho.c (grub_macho_close): Free uncompressedXX.
11432
	Don't free cmdsXX in uncompressedXX is set.
11433
	(grub_macho_file): Init new fields.
11434
	New argument is_64bit. All users updated.
11435
	Handle compressed. Error out if no suitable architecture is found.
11436
	Don't close file.
11437
	(grub_macho_open): New argument is_64bit. All users updated.
11438
	* grub-core/loader/macho32.c: Add defines for new fields.
11439
	* grub-core/loader/macho64.c: Likewise.
11440
	* grub-core/loader/machoXX.c (grub_macho_contains_macho): Make static.
11441
	(grub_macho_parse): Handle compressed.
11442
	Defer actual processing if compressed.
11443
	(grub_macho_cmds_iterate): Decompress if compressed. New argument
11444
	"filename". All users updated.
11445
	(grub_macho_size): New argument "filename". All users updated.
11446
	(grub_macho_get_entry_point): Likewise.
11447
	(grub_macho_load): Handle compressed.
11448
	* include/grub/macho.h (grub_macho_lzss_header): New struct.
11449
	(GRUB_MACHO_LZSS_OFFSET): New define.
11450
	(grub_decompress_lzss): New proto.
11451
	* include/grub/machoload.h (grub_macho_file): New fields to handle
11452
	compressed.
11453
	(grub_macho_contains_macho64): Remove proto.
11454
	(grub_macho_contains_macho32): Likewise.
11455
	* util/grub.d/30_os-prober.in: Use kernel cache if available.
11456
11457
2012-02-29  Vladimir Serbinenko  <phcoder@gmail.com>
11458
11459
	* grub-core/disk/pata.c (grub_pata_readwrite): Fix ATAPI protocol error.
11460
11461
2012-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
11462
11463
	Fix make dist.
11464
11465
	* Makefile.am (starfield_theme_files): New var.
11466
	(starfield_DATA): Use starfield_theme_files.
11467
	(EXTRA_DIST): Add starfield_theme_files. Add starfield source files.
11468
	Add bootcheck-related files.
11469
	* conf/Makefile.extra-dist (EXTRA_DIST): Add several missing files.
11470
	* docs/Makefile.am (EXTRA_DIST): Add font_char_metrics.png
11471
	and font_char_metrics.txt.
11472
	* grub-core/Makefile.core.def (kernel): Update extra_dist.
11473
	(setjmp): Add lib/ia64/longjmp.S.
11474
	* po/Makefile.in.in (DISTFILES): Add POTFILES-shell.in and grub.d.sed.
11475
	* po/POTFILES.in: Regenerate.
11476
	* po/Rules-swiss: use DISTFILES.common.extra2 and not
11477
	DISTFILES.common.extra1.
11478
	* util/devicemap.c: Removed.
11479
	* grub-core/lib/i386/relocator_backward.S: Likewise.
11480
	* util/import_gcry.py: Remove unused files. Add extra_dist for
11481
	ChangeLog.
11482
11483
2012-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
11484
11485
	* grub-core/gettext/gettext.c (grub_mofile_open): Call
11486
	grub_gettext_delete_list before changing grub_gettext_max to avoid
11487
	running out of array bounds.
11488
11489
2012-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
11490
11491
	* grub-core/term/i386/pc/vga_text.c: Add GRUB_MACHINE_MULTIBOOT to
11492
	grub_vga_text_init/grub_vga_text_fini.
11493
11494
2012-02-28  Vladimir Serbinenko  <phcoder@gmail.com>
11495
11496
	* grub-core/loader/i386/xnu.c (grub_xnu_boot): Fix format specification.
11497
11498
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11499
11500
	* configure.ac: Bump to 2.00~beta0.
11501
11502
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11503
11504
	* util/getroot.c (grub_find_root_devices_from_btrfs): Add
11505
	missing initialisation.
11506
11507
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11508
11509
	* grub-core/partmap/msdos.c (message_warn): Clarify messages.
11510
11511
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11512
11513
	Support v2 xnu boot arguments.
11514
11515
	* grub-core/loader/i386/xnu.c (grub_cpu_xnu_fill_devicetree):
11516
	New argument fsbfreq_out.
11517
	(grub_xnu_set_video): Receive an argument grub_xnu_boot_params_common.
11518
	(grub_xnu_boot): Support v2 arguments. Disable PIC so that APIC can
11519
	be used.
11520
	* grub-core/loader/machoXX.c (grub_macho_load): New argument
11521
	darwin_version.
11522
	* grub-core/loader/xnu.c (grub_xnu_darwin_version): New variable.
11523
	* include/grub/i386/xnu.h (grub_xnu_boot_params_common): New struct.
11524
	(grub_xnu_boot_params): Rename to ...
11525
	(grub_xnu_boot_params_v1): ...this. Use grub_xnu_boot_params_common.
11526
	(grub_xnu_boot_params_v2): New struct.
11527
11528
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11529
11530
	* grub-core/efiemu/prepare.c (grub_efiemu_crc): Add missing
11531
	zeroing of CRC field before computing CRC.
11532
11533
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11534
11535
	* grub-core/lib/relocator.c (malloc_in_range): Fix memory leak.
11536
	Change order of allocations to decrease fragmentation.
11537
11538
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11539
11540
	* Makefile.util.def (grub-ofpathname): Enable on all platforms.
11541
11542
2012-02-27  Colin Watson  <cjwatson@ubuntu.com>
11543
11544
	Use write-combining MTRR to speed up video with buggy BIOSes.
11545
11546
	* grub-core/video/i386/pc/vbe.c (framebuffer): New member mtrr.
11547
	(cpuid): New define.
11548
	(rdmsr): Likewise.
11549
	(wrmsr): Likewise.
11550
	(mtrr_base): Likewise.
11551
	(mtrr_mask): Likewise.
11552
	(grub_vbe_enable_mtrr_entry): New function.
11553
	(grub_vbe_enable_mtrr): Likewise.
11554
	(grub_vbe_disable_mtrr): Likewise.
11555
	(grub_vbe_bios_set_display_start): Disable mtrr when handing the
11556
	control off to BIOS.
11557
	(grub_video_vbe_init): Fill mtrr.
11558
	(grub_video_vbe_fini): Disable mtrr.
11559
	(grub_video_vbe_get_info_and_fini): Likewise.
11560
	(grub_video_vbe_setup): Enable mtrr.
11561
11562
2012-02-27  Colin Watson  <cjwatson@ubuntu.com>
11563
11564
	* include/grub/partition.h (grub_partition_map): Change prototype of
11565
	embed to take a maximum value for nsectors.
11566
	* include/grub/emu/hostdisk.h (grub_util_ldm_embed): Likewise.
11567
	* include/grub/fs.h (grub_fs): Likewise.
11568
	* grub-core/partmap/msdos.c (embed_signatures): New array.
11569
	(pc_partition_map_embed): Check for and avoid sectors matching any
11570
	of the signatures in embed_signatures, up to max_nsectors.
11571
	* grub-core/partmap/gpt.c (gpt_partition_map_embed): Restrict
11572
	returned sector map to max_nsectors.
11573
	* grub-core/disk/ldm.c (grub_util_ldm_embed): Likewise.
11574
	* grub-core/fs/btrfs.c (grub_btrfs_embed): Likewise.
11575
	* grub-core/fs/zfs/zfs.c (grub_zfs_embed): Likewise.
11576
	* util/grub-setup.c (setup): Allow for the embedding area being
11577
	split into multiple blocklists.  Tell dest_partmap->embed the
11578
	maximum number of sectors we care about.
11579
11580
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11581
11582
	* include/grub/fs.h (grub_fs) [GRUB_UTIL]: Add blocklist_install field.
11583
	Specify blocklist_install and reserver_first_sector for all fs.
11584
	* util/grub-setup.c (setup): Use FIBMAP/FIEMAP on Linux. Check resulting
11585
	blocklists.
11586
11587
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11588
11589
	* util/grub-install.in: Clarify strings.
11590
	Fix source dir check.
11591
11592
2012-02-27  Richard Laager <rlaager@wiktel.com>
11593
11594
	* util/getroot.c (grub_find_root_devices_from_mountinfo): Handle
11595
	"zfs" and "fuse.zfs" as synonyms.
11596
11597
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11598
11599
	* configure.ac: Put platform and target_cpu substitutions back since
11600
	they are used for directories.
11601
11602
2012-02-27  Richard Laager <rlaager@wiktel.com>
11603
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11604
11605
	* util/grub.d/10_linux.in: Add ZFS-related arguments.
11606
	* util/grub.d/20_linux_xen.in: Likewise.
11607
11608
2012-02-27  Richard Laager <rlaager@wiktel.com>
11609
11610
	* util/getroot.c (find_root_devices_from_poolname): Handle vdevs
11611
	with full paths.
11612
11613
2012-02-27  Richard Laager <rlaager@wiktel.com>
11614
11615
	* util/getroot.c (grub_find_root_devices_from_mountinfo): Add missing
11616
	unescape.
11617
11618
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11619
11620
	Don't use insecure popen in getroot.
11621
11622
	* util/getroot.c (get_mdadm_uuid): Move pipe logic to ...
11623
	(exec_pipe): ... here.
11624
	(find_root_devices_from_poolname): Use exec_pipe.
11625
11626
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11627
11628
	Remove platform and target_cpu replacement.
11629
11630
	* configure.ac: Remove platform and target_cpu substitutions.
11631
	* tests/util/grub-shell.in: Use modinfo.
11632
	* util/powerpc/ieee1275/grub-mkrescue.in: Specify powerpc-ieee1275
11633
	explicitly.
11634
11635
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11636
11637
	Autodetect platform in grub-install but allow override.
11638
11639
	* util/grub-install.in: Autodetect platform. Support --target and
11640
	--directory. Read platform from modinfo.sh.
11641
11642
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11643
11644
	Support btrfs multi-volume probe.
11645
11646
	* util/getroot.c (btrfs_ioctl_dev_info_args) [__linux__]: New struct.
11647
	(btrfs_ioctl_fs_info_args) [__linux__]: Likewise.
11648
	(BTRFS_IOC_DEV_INFO) [__linux__]: New define.
11649
	(BTRFS_IOC_FS_INFO) [__linux__]: Likewise.
11650
	(grub_find_root_devices_from_btrfs) [__linux__]: New function.
11651
	(grub_find_root_devices_from_mountinfo) [__linux__]: Use
11652
	grub_find_root_devices_from_btrfs if on btrfs.
11653
11654
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11655
11656
	Remove any awareness of *.c util files about target.
11657
11658
	* Makefile.util.def (grub-setup): Split to ...
11659
	(grub-bios-setup): ... and this.
11660
	(grub-sparc64-setup): ... and this.
11661
	* configure.ac: Don't add machine_CPPFLAGS into HOST_CPPFLAGS.
11662
	* docs/man/grub-setup.h2m: Split into ...
11663
	* docs/man/grub-sparc64-setup.h2m: ... this.
11664
	* docs/man/grub-bios-setup.h2m: ... and this.
11665
	* include/grub/dl.h (grub_dl) [GRUB_UTIL]: Remove struct.
11666
	* include/grub/elf.h (Elf_*) [GRUB_UTIL]: Remove types.
11667
	(GRUB_TARGET_WORDSIZE) [GRUB_UTIL]: Remove.
11668
	(grub_target_addr_t): Remove.
11669
	(grub_target_size_t): Remove.
11670
	(grub_target_ssize_t): Remove.
11671
	* util/grub-install.in: Use new grub-*-setup.
11672
	* util/grub-mkimagexx.c (Elf_Word): New define.
11673
	(Elf_Half): Likewise.
11674
	(Elf_Section): Likewise.
11675
	(ELF_ST_TYPE): Likewise.
11676
	* util/grub-setup.c: Switch from GRUB_MACHINE_SPARC64 to
11677
	GRUB_SETUP_SPARC64 and from GRUB_MACHINE_PCBIOS to GRUB_SETUP_BIOS.
11678
11679
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11680
11681
	Replace grub_target_addr with more appropriate types.
11682
11683
	* grub-core/commands/efi/fixvideo.c (scan_card): Replace
11684
	grub_target_addr with grub_addr.
11685
	* grub-core/commands/iorw.c (grub_cmd_read): Replace
11686
	grub_target_addr with grub_port.
11687
	(grub_cmd_write): Likewise.
11688
	* grub-core/commands/memrw.c (grub_cmd_read): Replace
11689
	grub_target_addr with grub_addr.
11690
	(grub_cmd_write): Likewise.
11691
	* grub-core/video/efi_uga.c (find_line_len): Likewise.
11692
11693
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11694
11695
	* include/grub/efi/api.h (grub_efi_runtime_services): Add missing
11696
	const qualifier for vendor_guid.
11697
11698
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11699
11700
	* grub-core/efiemu/runtime/efiemu.c (efiemu_get_variable): Add missing
11701
	const qualifier.
11702
	(efiemu_memequal): Likewise.
11703
	(find_variable): Likewise.
11704
11705
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11706
11707
	Fix missing console prototype on qemu-mips.
11708
11709
	* include/grub/mips/qemu_mips/console.h: New file.
11710
11711
2012-02-27  Matthew Garrett  <mjg@redhat.com>
11712
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11713
11714
	* grub-core/kern/efi/efi.c (grub_efi_get_variable): Add new function.
11715
	* include/grub/efi/efi.h: Likewise.
11716
	* include/grub/efi/api.h: Add guid for EFI-specified variables.
11717
	* include/grub/charset.h (GRUB_MAX_UTF16_PER_UTF8): New definition.
11718
	* grub-core/normal/charset.c (grub_utf8_process): Move from here ...
11719
	* include/grub/charset.h (grub_utf8_process): ... to here. Inline.
11720
	* grub-core/normal/charset.c (grub_utf8_to_utf16): Move from here ...
11721
	* include/grub/charset.h (grub_utf8_to_utf16): ... to here. Inline.
11722
11723
2012-02-27  Matthew Garrett  <mjg@redhat.com>
11724
11725
	* include/grub/efi/pci.h: New file to define EFI PCI protocols.
11726
11727
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11728
11729
	* grub-core/disk/diskfilter.c (grub_diskfilter_iterate): Fix off-by-one
11730
	error.
11731
11732
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11733
11734
	* configure.ac: Remove inappropriate use of program_transform_name
11735
	on grubdir and bootdir but allow explicit specification of those
11736
	variables.
11737
11738
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11739
11740
	* util/grub-mknetdir.in (grub_prefix): Removed.
11741
	(subdir): Use @bootdirname@ and @grubdirname@.
11742
11743
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11744
11745
	Replace PACKAGE_TARNAME with PACKAGE in pkglibdir and pkgdatadir.
11746
11747
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11748
11749
	* po/POTFILES.in: Regenerated.
11750
11751
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11752
11753
	Remove improper use of program_transform_name on pkglibrootdir.
11754
11755
	* configure.ac (pkglibrootdir): Removed.
11756
	(grub-mkimage): Replace PKGLIBROOTDIR with PKGLIBDIR.
11757
	* util/grub-mkimage.c: Likewise.
11758
11759
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11760
11761
	* grub-core/normal/menu_text.c (grub_print_message_indented_real): Fix a
11762
	warning.
11763
11764
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11765
11766
	* util/grub-install.in: Use file identifier if no UUID is available
11767
	or user explicitly prompted for it.
11768
11769
2012-02-27  Navdeep Parhar <nparhar@gmail.com>
11770
11771
	* grub-core/loader/i386/bsd.c (freebsd_zfsguid): New variable.
11772
	(freebsd_get_zfs): New function.
11773
	(grub_freebsd_boot): Pass zfs UUID.
11774
	(grub_cmd_freebsd): Set zfs UUID.
11775
11776
2012-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
11777
11778
	* conf/Makefile.common (platformdir): Base on pkglibdir and not
11779
	pkglibrootdir.
11780
11781
2012-02-27  Mike Gilbert  <floppym@gentoo.org>
11782
11783
	Add configure flag to control libzfs integration.
11784
11785
	* configure.ac: Add AC_ARG_ENABLE(libzfs ...) and associated logic.
11786
11787
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11788
11789
	* grub-core/disk/diskfilter.c (insert_array): Choose the smallest
11790
	device.
11791
	* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Reject too
11792
	small devices.
11793
11794
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11795
11796
	Remove grub_{modname}_init and grub_{modname}_fini. They should never
11797
	be used directly if it's really a module and GRUB_MOD_INIT shouldn't
11798
	be used on non-modules.
11799
11800
	* grub-core/commands/boot.c (GRUB_MOD_INIT) [LOONGSON || QEMU_MIPS]:
11801
	Rename to grub_boot_init.
11802
	(GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to grub_boot_fini.
11803
	* grub-core/commands/keylayouts.c (GRUB_MOD_INIT)
11804
	[LOONGSON || QEMU_MIPS]: Rename to grub_keylayouts_init.
11805
	(GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to grub_keylayouts_fini.
11806
	* grub-core/font/font_cmd.c (GRUB_MOD_INIT)
11807
	[LOONGSON || QEMU_MIPS]: Rename to grub_font_init.
11808
	(GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to grub_font_fini.
11809
	* grub-core/kern/mips/loongson/init.c: Replace explicit protos with
11810
	includes.
11811
	(grub_machine_init): Remove empty inits.
11812
	* grub-core/kern/mips/qemu_mips/init.c: Replace explicit protos with
11813
	includes.
11814
	(grub_machine_init): Remove empty inits.
11815
	* grub-core/term/arc/console.c: Remove explicit proto.
11816
	* grub-core/term/at_keyboard.c (GRUB_MOD_INIT)
11817
	[LOONGSON || QEMU_MIPS]: Rename to grub_at_keyboard_init.
11818
	(GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to
11819
	grub_at_keyboard_fini.
11820
	* grub-core/term/gfxterm.c (GRUB_MOD_INIT)
11821
	[LOONGSON || QEMU_MIPS]: Rename to grub_gfxterm_init.
11822
	(GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to
11823
	grub_gfxterm_fini.
11824
	* grub-core/term/i386/pc/vga_text.c (GRUB_MOD_INIT)
11825
	[LOONGSON || QEMU_MIPS]: Rename to grub_vgatext_init.
11826
	(GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to
11827
	grub_vgatext_fini.
11828
	* grub-core/term/ieee1275/console.c: Remove explicit proto.
11829
	* grub-core/term/serial.c (GRUB_MOD_INIT)
11830
	[LOONGSON || QEMU_MIPS]: Rename to grub_serial_init.
11831
	(GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to
11832
	grub_serial_fini.
11833
	* grub-core/term/terminfo.c (GRUB_MOD_INIT)
11834
	[LOONGSON || QEMU_MIPS]: Rename to grub_terminfo_init.
11835
	(GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to
11836
	grub_terminfo_fini.
11837
	* grub-core/video/bitmap.c (GRUB_MOD_INIT): Removed.
11838
	(GRUB_MOD_FINI): Likewise.
11839
	* grub-core/video/radeon_fuloong2e.c (GRUB_MOD_INIT)
11840
	[LOONGSON]: Rename to grub_video_radeon_fuloong2e_init.
11841
	(GRUB_MOD_FINI) [LOONGSON]: Rename to
11842
	grub_video_radeon_fuloong2e_fini.
11843
	* grub-core/video/sis315pro.c (GRUB_MOD_INIT)
11844
	[LOONGSON]: Rename to grub_video_sis315pro_init.
11845
	(GRUB_MOD_FINI) [LOONGSON]: Rename to
11846
	grub_video_sis315pro_fini.
11847
	* grub-core/video/sm712.c (GRUB_MOD_INIT)
11848
	[LOONGSON]: Rename to grub_video_sm712_init.
11849
	(GRUB_MOD_FINI) [LOONGSON]: Rename to
11850
	grub_video_sm712_fini.
11851
	* include/grub/at_keyboard.h (grub_at_keyboard_init): New proto.
11852
	(grub_at_keyboard_fini): Likewise.
11853
	* include/grub/dl.h (GRUB_MOD_INIT) [!GRUB_UTIL && !EMU]:
11854
	Don't declare grub_{modname}_init.
11855
	(GRUB_MOD_INIT) [!GRUB_UTIL && !EMU]: Don't declare grub_{modname}_fini.
11856
	* include/grub/keyboard_layouts.h (grub_keylayouts_init) [!EMU]:
11857
	New proto.
11858
	(grub_keylayouts_fini) [!EMU]: Likewise.
11859
	* include/grub/serial.h (grub_serial_init) [!EMU]:
11860
	New proto.
11861
	(grub_serial_fini) [!EMU]: Likewise.
11862
	* include/grub/terminfo.h (grub_terminfo_init) [!EMU]:
11863
	New proto.
11864
	(grub_terminfo_fini) [!EMU]: Likewise.
11865
	* include/grub/video.h (grub_font_init) [!EMU]:
11866
	New proto.
11867
	(grub_font_fini) [!EMU]: Likewise.
11868
	(grub_gfxterm_init) [!EMU]: Likewise.
11869
	(grub_gfxterm_fini) [!EMU]: Likewise.
11870
	(grub_video_sm712_init) [!EMU]: Likewise.
11871
	(grub_video_sm712_fini) [!EMU]: Likewise.
11872
	(grub_video_sis315pro_init) [!EMU]: Likewise.
11873
	(grub_video_sis315pro_fini) [!EMU]: Likewise.
11874
	(grub_video_radeon_fuloong2e_init) [!EMU]: Likewise.
11875
	(grub_video_radeon_fuloong2e_fini) [!EMU]: Likewise.
11876
11877
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11878
11879
	Make nand a prefix for nand devices.
11880
11881
	* grub-core/disk/ieee1275/nand.c (grub_nand_open): Use prefix nand.
11882
11883
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11884
11885
	* grub-core/kern/misc.c (grub_stpcpy): Move from here ...
11886
	* include/grub/misc.h (grub_stpcpy): ... to here. Inlined.
11887
11888
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11889
11890
	* include/grub/env.h (grub_env_find): Remove prototype.
11891
	* grub-core/kern/env.c (grub_env_find): Make static.
11892
	(grub_env_set): Remove useless set.
11893
11894
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11895
11896
	* grub-core/kern/i386/realmode.S: Remove useless align.
11897
11898
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11899
11900
	* include/grub/dl.h (grub_dl_load_file): Don't export.
11901
11902
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11903
11904
	* grub-core/disk/diskfilter.c (grub_diskfilter_open): Remove useless
11905
	grub_dprintf.
11906
11907
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11908
11909
	* grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Remove useless
11910
	grub_errors.
11911
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Simplify by
11912
	not reloading whole superblock but only the part which is really needed.
11913
	Remove useless grub_errors.
11914
	* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Remove useless
11915
	grub_errors.
11916
11917
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11918
11919
	Don't export grub_get_rtc.
11920
11921
	* include/grub/i386/pc/time.h (grub_get_rtc): Don't export.
11922
	* grub-core/commands/i386/pc/play.c (play): Use grub_get_time_ms.
11923
11924
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11925
11926
	* grub-core/genmod.sh.in: Add -R .note.GNU-stack to strip.
11927
11928
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11929
11930
	* grub-core/disk/diskfilter.c (insert_array): Remove scanner_name
11931
	argument since it can be deduced from diskfilter. All users updated.
11932
11933
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11934
11935
	Remove prio_list.
11936
11937
	* include/grub/list.h (grub_prio_list): Removed.
11938
	(GRUB_PRIO_LIST_PRIO_MASK): Removed. All users switched to
11939
	GRUB_COMMAND_PRIO_MASK.
11940
	(GRUB_PRIO_LIST_FLAG_ACTIVE): Removed. All users switched to
11941
	GRUB_COMMAND_FLAG_ACTIVE.
11942
	(grub_prio_list_insert): Removed.
11943
	(grub_prio_list_remove): Likewise.
11944
	(GRUB_AS_PRIO_LIST): Likewise.
11945
	(GRUB_AS_PRIO_LIST_P): Likewise.
11946
	* include/grub/command.h (GRUB_COMMAND_PRIO_MASK): New define.
11947
	(GRUB_COMMAND_FLAG_ACTIVE): Likewise.
11948
	* grub-core/kern/list.c (grub_prio_list_insert): Remove.
11949
	* grub-core/kern/command.c (grub_register_command_prio): Inline
11950
	the prio_list code.
11951
	(grub_unregister_command): Likewise.
11952
11953
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11954
11955
	Fix interrupt mixup from previous commit.
11956
11957
	* include/grub/i386/pc/int.h (grub_i386_idt): New struct.
11958
	(grub_realidt): New var.
11959
	* grub-core/lib/i386/relocator16.S (grub_relocator16_idt): New variable
11960
	Load idt.
11961
	* grub-core/lib/i386/relocator.c (grub_relocator16_idt):
11962
	New declaration.
11963
	(grub_relocator16_boot): Set grub_relocator16_idt.
11964
	* grub-core/kern/i386/realmode.S (realidt): Renamed to ...
11965
	(LOCAL(realidt)): ... this.
11966
	* grub-core/boot/i386/pc/startup_raw.S: Pass pointer to realidt in eax.
11967
	* grub-core/kern/i386/pc/startup.S: Save pointer to realidt.
11968
	(grub_realidt): New variable.
11969
11970
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11971
11972
	* grub-core/lib/i386/backtrace.c (grub_cmd_backtrace): Move from ...
11973
	* grub-core/lib/backtrace.c (grub_cmd_backtrace): ... to here.
11974
	* grub-core/lib/i386/backtrace.c (GRUB_MOD_INIT): Move from ...
11975
	* grub-core/lib/backtrace.c (GRUB_MOD_INIT): ... to here.
11976
	Gettextize.
11977
	* grub-core/lib/i386/backtrace.c (GRUB_MOD_FINI): Move from ...
11978
	* grub-core/lib/backtrace.c (GRUB_MOD_FINI): ... to here.
11979
	* po/POTFILES.in: Regenerate.
11980
11981
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11982
11983
	* grub-core/commands/probe.c (grub_cmd_probe): Gettextise UUID and label
11984
	errors.
11985
11986
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11987
11988
	* grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len): Stop on
11989
	\0.
11990
	(add_length): Likewise.
11991
11992
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
11993
2012-02-26  Lubomir Kundrak  <lkundrak@redhat.com>
11994
11995
	GDB serial and backtrace support.
11996
11997
	* grub-core/kern/i386/realmode.S (real_to_prot): Reload IDT.
11998
	(prot_to_real): Likewise.
11999
	* grub-core/kern/i386/int.S (grub_bios_interrupt): Remove IDT reload.
12000
	* grub-core/Makefile.core.def (backtrace): New module.
12001
	(gdb): Likewise.
12002
	* grub-core/gdb/cstub.c: New file.
12003
	* grub-core/gdb/gdb.c: Likewise.
12004
	* grub-core/gdb/i386/idt.c: Likewise.
12005
	* grub-core/gdb/i386/machdep.S: Likewise.
12006
	* grub-core/gdb/i386/signal.c: Likewise.
12007
	* grub-core/lib/i386/backtrace.c: Likewise.
12008
	* grub-core/lib/backtrace.c: Likewise.
12009
	* include/grub/backtrace.h: Likewise.
12010
	* include/grub/gdb.h: Likewise.
12011
	* include/grub/i386/gdb.h: Likewise.
12012
12013
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12014
12015
	* grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len):
12016
	New function.
12017
	(add_length): Likewise.
12018
	(__argp_fmtstream_update): Handle strings with non-ASCII chars.
12019
	* grub-core/gnulib/argp-fmtstream.h (__argp_get_display_len): New
12020
	proto.
12021
	* grub-core/gnulib/argp-help.c (argp_args_usage): Use
12022
	__argp_get_display_len.
12023
12024
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12025
12026
	$"..." support in scripts.
12027
12028
	* grub-core/script/execute.c (grub_script_arglist_to_argv): Handle
12029
	GRUB_SCRIPT_ARG_TYPE_GETTEXT.
12030
	* grub-core/script/yylex.l: Likewise.
12031
	* include/grub/script_sh.h (GRUB_SCRIPT_ARG_TYPE_GETTEXT): New enum
12032
	value.
12033
12034
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12035
12036
	* gentpl.py: Remove obsolete pkglib_DATA handling.
12037
12038
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12039
12040
	Don't transform PACKAGE_TARNAME following a discussion on autoconf
12041
	mailing list.
12042
12043
	* util/grub-install.in: Don't transform PACKAGE_TARNAME.
12044
	* util/grub-kbdcomp.in: Likewise.
12045
	* util/grub-mkconfig.in: Likewise.
12046
	* util/grub-mkconfig_lib.in: Likewise.
12047
	* util/grub-mknetdir.in: Likewise.
12048
	* util/grub-mkrescue.in: Likewise.
12049
	* util/grub-mkstandalone.in: Likewise.
12050
	* util/grub-reboot.in: Likewise.
12051
	* util/grub-set-default.in: Likewise.
12052
	* util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
12053
12054
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12055
12056
	Remove GRUB_PREFIX.
12057
12058
	* util/grub-mkconfig.in: Remove GRUB_PREFIX.
12059
	* util/grub.d/00_header.in: Compute prefix in the only place it's still
12060
	used for backward compatibility.
12061
12062
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12063
12064
	Add new all_video module.
12065
12066
	* grub-core/Makefile.am (moddep.lst): Make dependent on video.lst.
12067
	* grub-core/Makefile.core.def (all_video): New module.
12068
	* grub-core/genmoddep.awk: Generate dependency of all_video from
12069
	video.lst.
12070
	* grub-core/lib/fake_module.c: New file.
12071
	* grub-core/normal/main.c (features): Add feature_all_video_module.
12072
	* util/grub.d/00_header.in: Define locale_dir based on $prefix and
12073
	don't do explicit search again.
12074
	insmod all_video in load_video if available.
12075
12076
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12077
12078
	Another round of string clarification and adding TRANSLATORS comments.
12079
12080
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12081
12082
	* util/grub-mknetdir.in: Remove erroneous reference to install_device.
12083
12084
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12085
12086
	* grub-core/normal/charset.c (grub_utf8_to_ucs4_alloc): Fix return type
12087
	to grub_ssize_t.
12088
	* grub-core/normal/main.c (grub_normal_init_page): Fix msg_len type.
12089
	* include/grub/charset.h (grub_utf8_to_ucs4_alloc): Fix prototype.
12090
12091
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12092
12093
	* grub-core/normal/menu_text.c (grub_print_message_indented_real): Add
12094
	trailing newline implicitly. All users updated.
12095
12096
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12097
12098
	Implement serial on IEEE1275 and EFI.
12099
12100
	* docs/grub.texi (Platform-specific limitations): Fix the columen video
12101
	on emu. Mention arc and emu as the only platforms without serial
12102
	support.
12103
	* grub-core/Makefile.core.def (serial): Enable on all terminfomodule and
12104
	ieee1275 platforms.
12105
	* grub-core/term/efi/serial.c: New file.
12106
	* grub-core/term/ieee1275/serial.c: Likewise.
12107
	* grub-core/term/serial.c (grub_serial_find): Disable direct port
12108
	specification if no ns8250 driver is available.
12109
	(grub_cmd_serial): Likewise.
12110
	(GRUB_MOD_INIT) [GRUB_MACHINE_IEEE1275]: Init ofserial.
12111
	(GRUB_MOD_INIT) [GRUB_MACHINE_EFI]: Init efiserial.
12112
	* include/grub/efi/api.h (GRUB_EFI_SERIAL_IO_GUID): New define.
12113
	(grub_efi_parity_type_t): New type.
12114
	(grub_efi_stop_bits_t): Likewise.
12115
	(grub_efi_serial_io_interface): New struct.
12116
	* include/grub/serial.h (grub_serial_port): Make 'broken' field
12117
	available for all interfaces.
12118
	Add EFI and IEEE1275 fields.
12119
	(grub_ofserial_init): New proto.
12120
	(grub_efiserial_init): Likeiwse.
12121
	* util/grub.d/00_header.in: Don't check for the presence of serial
12122
	module.
12123
12124
2012-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
12125
12126
	* grub-core/disk/ieee1275/ofdisk.c (scan): Fix improper use of device
12127
	name as if it was an alias.
12128
12129
2012-02-25  Vladimir Serbinenko  <phcoder@gmail.com>
12130
12131
	* grub-core/commands/lsacpi.c (options): Fix typo.
12132
12133
2012-02-25  Vladimir Serbinenko  <phcoder@gmail.com>
12134
12135
	Convert grub-emu to argp.
12136
12137
	* grub-core/Makefile.core.def (kernel): Add kern/emu/argp_common.c on
12138
	emu.
12139
	* util/argp_common.c: Rename to ...
12140
	* grub-core/kern/emu/argp_common.c: ... this. All users updated.
12141
	Add missing includes.
12142
	* grub-core/kern/emu/main.c: Convert to argp.
12143
	* po/POTFILES.in: Regenerate.
12144
	* util/grub-install.in (usage): Make first letter lowcase in messages
12145
	for uniformity.
12146
	* util/grub-setup.c (options): Likewise.
12147
12148
2012-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
12149
12150
	* grub-core/gfxmenu/gui_progress_bar.c (progress_bar_set_property):
12151
	Put back accidently commented-out code.
12152
12153
2012-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
12154
12155
	* grub-core/fs/hfsplus.c (grub_hfsplus_btree_iterate_node): Add btree
12156
	loop check using Brent algorithm.
12157
	(grub_hfsplus_btree_search): Likewise.
12158
12159
2012-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
12160
12161
	* util/grub-install.in: Fix usage of wrong device for PreP install.
12162
12163
2012-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
12164
12165
	* conf/Makefile.common (CFLAGS_GNULIB): Add
12166
	-Wno-unsafe-loop-optimizations.
12167
	* configure.ac: Remove -Wmissing-declarations and -Wmissing-prototypes
12168
	on tools.
12169
	* grub-core/commands/legacycfg.c: Add pragma to skip
12170
	-Wunsafe-loop-optimizations.
12171
	(check_password_md5_real): Fix loop counter type.
12172
	* grub-core/commands/testload.c (grub_cmd_testload): Fix over the EOF
12173
	reading.
12174
	* grub-core/disk/ldm.c (grub_util_get_ldm): Fix logic error.
12175
	* grub-core/fs/zfs/zfs_sha256.c (zio_checksum_SHA256): Add safety
12176
	loop condition.
12177
	* grub-core/io/gzio.c: Add pragma to skip -Wunsafe-loop-optimizations.
12178
	* grub-core/lib/LzmaEnc.c (GetOptimum): Avoid possible infinite loop.
12179
	* grub-core/net/net.c (grub_net_route_address): Add safety loop
12180
	condition.
12181
	* grub-core/normal/charset.c (bidi_line_wrap): Likewise.
12182
	* grub-core/normal/cmdline.c (grub_set_history): Fix loop types and
12183
	avoid possible infinite loops.
12184
	* grub-core/script/parser.y: Add pragma to skip -Wmissing-declarations
12185
	and -Wunsafe-loop-optimizations.
12186
	* grub-core/script/yylex.l: Likewise.
12187
	* util/grub-mkfont.c: Add pragma to skip -Wunsafe-loop-optimizations.
12188
	(print_glyphs): Avoid infinite loops.
12189
	* util/grub-mkimage.c (compress_kernel_xz): Fix format security.
12190
12191
2012-02-24  Grégoire Sutre  <gregoire.sutre@gmail.com>
12192
12193
	* grub-core/commands/lsacpi.c (disp_acpi_xsdt_table): Fix loop condition
12194
	to avoid infinite loop.
12195
	(disp_acpi_rsdt_table): Likewise.
12196
12197
2012-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
12198
12199
	* grub-core/font/font.c (grub_font_load): Add support for default
12200
	path for fonts ($prefix/fonts).
12201
	* grub-core/kern/corecmd.c (grub_core_cmd_insmod): Unify condition
12202
	for checking if string is a path.
12203
	* grub-core/normal/main.c (features): Add feature_default_font_path.
12204
	* util/grub-mkconfig.in: Skip mangling of GRUB_FONT into GRUB_FONT_PATH.
12205
	* util/grub.d/00_header.in: Use default directory if possible.
12206
	* util/grub-install.in: Install unicode.pf2.
12207
12208
2012-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
12209
12210
	* po/README: Add de_CH and en@quot to po/LINGUAS generation command.
12211
	* po/Rules-swiss: New file.
12212
	* po/swiss.sed: Likewise.
12213
12214
2012-02-23  Vladimir Serbinenko  <phcoder@gmail.com>
12215
12216
	* grub-core/fs/btrfs.c (find_device): Fix typos.
12217
	* grub-core/fs/zfs/zfs.c (read_device): Likewise.
12218
	* util/grub-mkrelpath.c (argp_parser): Likewise.
12219
	Reported by: Yuri Chornoivan.
12220
12221
2012-02-23  Dalet Omega <daletomega@gmail.com>
12222
12223
	* grub-core/gfxmenu/gui_label.c (label_set_property): Add template
12224
	for usual informative messages.
12225
12226
2012-02-23  Dalet Omega <daletomega@gmail.com>
12227
12228
	Starfield theme.
12229
12230
	* Makefile.am: Define starfield_DATA and dejavu.pf2 generation.
12231
	* conf/Makefile.common: Define starfielddir.
12232
	* configure.ac: Configure starfield.
12233
	* themes/starfield/COPYING.CC-BY-SA-3.0: New file.
12234
	* themes/starfield/README: Likewise.
12235
	* themes/starfield/blob_w.png: Likewise.
12236
	* themes/starfield/boot_menu_c.png: Likewise.
12237
	* themes/starfield/boot_menu_e.png: Likewise.
12238
	* themes/starfield/boot_menu_n.png: Likewise.
12239
	* themes/starfield/boot_menu_ne.png: Likewise.
12240
	* themes/starfield/boot_menu_nw.png: Likewise.
12241
	* themes/starfield/boot_menu_s.png: Likewise.
12242
	* themes/starfield/boot_menu_se.png: Likewise.
12243
	* themes/starfield/boot_menu_sw.png: Likewise.
12244
	* themes/starfield/boot_menu_w.png: Likewise.
12245
	* themes/starfield/slider_c.png: Likewise.
12246
	* themes/starfield/slider_n.png: Likewise.
12247
	* themes/starfield/slider_s.png: Likewise.
12248
	* themes/starfield/src/blob_nw.xcf: Likewise.
12249
	* themes/starfield/src/bootmenu/: Likewise.
12250
	* themes/starfield/src/bootmenu/center.xcf: Likewise.
12251
	* themes/starfield/src/bootmenu/corner.xcf: Likewise.
12252
	* themes/starfield/src/bootmenu/side.xcf: Likewise.
12253
	* themes/starfield/src/slider_c.xcf: Likewise.
12254
	* themes/starfield/src/slider_n.xcf: Likewise.
12255
	* themes/starfield/src/slider_s.xcf: Likewise.
12256
	* themes/starfield/src/terminalbox/: Likewise.
12257
	* themes/starfield/src/terminalbox/center.xcf: Likewise.
12258
	* themes/starfield/src/terminalbox/corner.xcf: Likewise.
12259
	* themes/starfield/src/terminalbox/side.xcf: Likewise.
12260
	* themes/starfield/starfield.png: Likewise.
12261
	* themes/starfield/terminal_box_c.png: Likewise.
12262
	* themes/starfield/terminal_box_e.png: Likewise.
12263
	* themes/starfield/terminal_box_n.png: Likewise.
12264
	* themes/starfield/terminal_box_ne.png: Likewise.
12265
	* themes/starfield/terminal_box_nw.png: Likewise.
12266
	* themes/starfield/terminal_box_s.png: Likewise.
12267
	* themes/starfield/terminal_box_se.png: Likewise.
12268
	* themes/starfield/terminal_box_sw.png: Likewise.
12269
	* themes/starfield/terminal_box_w.png: Likewise.
12270
	* themes/starfield/theme.txt: Likewise.
12271
12272
2012-02-23  Vladimir Serbinenko  <phcoder@gmail.com>
12273
12274
	* util/grub.d/00_header.in: Add missing export theme.
12275
12276
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12277
12278
	* util/ieee1275/ofpath.c: Remove include of malloc.h since stdlib is
12279
	already included.
12280
	Reported by: Eren D.
12281
12282
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12283
12284
	* conf/Makefile.common (grubdatadir): Removed.
12285
	(Makefile.am): Move eveything grubdata to pkgdata.
12286
12287
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12288
12289
	* grub-core/commands/acpihalt.c (get_sleep_type):
12290
	Remove unused variable.
12291
12292
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12293
12294
	* include/grub/acpi.h (GRUB_ASCII_OPCODE): Add
12295
	GRUB_ACPI_OPCODE_STRING_CONST, GRUB_ACPI_OPCODE_BUFFER,
12296
	GRUB_ACPI_OPCODE_CREATE_WORD_FIELD
12297
	and GRUB_ACPI_OPCODE_CREATE_BYTE_FIELD.
12298
	* grub-core/commands/acpihalt.c [GRUB_DSDT_TEST]: Replace include of
12299
	i18n with gettext no-op.
12300
	(skip_data_ref_object): Support GRUB_ACPI_OPCODE_BUFFER and
12301
	GRUB_ACPI_OPCODE_STRING_CONST.
12302
	(get_sleep_type): Support GRUB_ACPI_OPCODE_CREATE_WORD_FIELD and
12303
	GRUB_ACPI_OPCODE_CREATE_BYTE_FIELD. Add handling of unknown opcodes.
12304
12305
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12306
12307
	* po/POTFILES.in: Regenerate.
12308
12309
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12310
12311
	* Makefile.util.def (libgrubmods.a): Add -Wno-error=logical-op
12312
	-Wno-error=missing-noreturn.
12313
12314
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12315
12316
	* grub-core/fs/affs.c (grub_affs_read_block): Avoid <= in loop
12317
	condition to avoid possibly infinite loops.
12318
	* grub-core/lib/pbkdf2.c (grub_crypto_pbkdf2): Likewise.
12319
	* grub-core/lib/xzembed/xz_dec_bcj.c (bcj_powerpc): Likewise.
12320
12321
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12322
12323
	* grub-core/normal/charset.c (bidi_line_wrap): Avoid <= in loop
12324
	condition to avoid possibly infinite loops.
12325
12326
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12327
12328
	* grub-core/kern/emu/hostdisk.c (read_device_map): Add missing noreturn
12329
	on show_error.
12330
12331
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12332
12333
	* grub-core/kern/disk.c (grub_disk_write): Add missing const qualifier.
12334
12335
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12336
12337
	* grub-core/kern/corecmd.c (grub_core_cmd_ls): Add missing var init.
12338
12339
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12340
12341
	* util/bin2h.c (usage): Add missing attribute noreturn.
12342
12343
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12344
12345
	* grub-core/commands/testload.c (grub_cmd_testload): Fix overflow
12346
	if the size isn't divisible by 512.
12347
12348
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12349
12350
	Make list_push and list_remove functions rather than inline functions
12351
	to decrease size and avoid aliasing violations.
12352
12353
	* include/grub/list.h (grub_list_push): Move to ...
12354
	* grub-core/kern/list.c (grub_list_push): ... here. Don't inline.
12355
	* include/grub/list.h (grub_list_remove): Move to ...
12356
	* grub-core/kern/list.c (grub_list_remove): ... here. Don't inline.
12357
12358
2012-02-22  Vladimir Serbinenko  <phcoder@gmail.com>
12359
12360
	* configure.ac: Disable for now -Wstack-protector, -Wunreachable-code
12361
	and -Wunused-result.
12362
12363
2012-02-21  Vladimir Serbinenko  <phcoder@gmail.com>
12364
12365
	* grub-core/net/net.c (grub_cmd_deladdr): Fix index.
12366
	Reported by: Seth Goldberg
12367
12368
2012-02-21  Vladimir Serbinenko  <phcoder@gmail.com>
12369
12370
	* configure.ac: Add -fno-builtin-gettext on host if NLS is disabled.
12371
12372
2012-02-19  Samuel Thibault  <samuel.thibault@ens-lyon.org>
12373
12374
	* util/grub-mkconfig.in (GRUB_CMDLINE_GNUMACH): Export variable.
12375
	* util/grub.d/10_hurd.in: Include GRUB_CMDLINE_GNUMACH in gnumach
12376
	command line.
12377
	* docs/grub.texi (Simple configuration): Document
12378
	GRUB_CMDLINE_GNUMACH.
12379
12380
2012-02-18  Vladimir Serbinenko  <phcoder@gmail.com>
12381
12382
	* conf/Makefile.common (platform_SCRIPTS): New variable.
12383
	(platform_PROGRAMS): Likewise.
12384
	* gentpl.py: Mark *,module and *.image for install.
12385
	* grub-core/gdb_grub.in: Add a notice of expected environment.
12386
	* grub-core/Makefile.core.def (gdb_grub): Mark for install.
12387
	(gmodule.pl): Likewise.
12388
12389
2012-02-18  Vladimir Serbinenko  <phcoder@gmail.com>
12390
12391
	Replace grub_checkkey with grub_getkey_noblock.
12392
12393
	* grub-core/kern/term.c (grub_checkkey): Replaced with ...
12394
	(grub_getkey_noblock): ... this. All users updated.
12395
12396
2012-02-18  Vladimir Serbinenko  <phcoder@gmail.com>
12397
12398
	* grub-core/kern/emu/console.c: Move to ...
12399
	* grub-core/term/emu/console.c: ...here.
12400
	(grub_ncurses_getkey): Fix return value if no key is detected.
12401
12402
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12403
12404
	* include/grub/test.h (grub_unit_test_init): Add missing prototype.
12405
	(grub_unit_test_fini): Likewise.
12406
	* tests/lib/unit_test.c (main): Remove extra nested external prototype.
12407
12408
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12409
12410
	* include/grub/test.h (GRUB_UNIT_TEST)
12411
12412
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12413
12414
	* grub-core/script/execute.c (grub_script_break): Clarify logic.
12415
	Better error handling.
12416
	(grub_script_return): Likewise.
12417
	* grub-core/script/lexer.c (grub_script_lexer_yywrap): Likewise.
12418
12419
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12420
12421
	* grub-core/lib/libgcrypt_wrap/cipher_wrap.h (__GNU_LIBRARY__): Avoid
12422
	rimplicit redifinition.
12423
12424
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12425
12426
	* docs/grub.texi (Internationalisation): Detail (lack of) collation in
12427
	GRUB.
12428
12429
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12430
12431
	* grub-core/normal/cmdline.c (grub_cmdline_get): Don't gettext prompt.
12432
	* grub-core/normal/main.c (grub_normal_read_line_real): Gettext
12433
	prompt here.
12434
12435
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12436
12437
	* grub-core/fs/zfs/zfs.c (zfs_fetch_nvlist): Mark unknown member here
12438
	as GRUB_ERR_BUG. Don't malloc if no device is available.
12439
12440
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12441
12442
	* grub-core/term/terminfo.c (grub_terminfo_output_unregister):
12443
	Mark calling with invalid term as GRUB_ERR_BUG.
12444
12445
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12446
12447
	* grub-core/net/tftp.c (tftp_receive): Silently discard too short
12448
	packets rather than raising an error.
12449
12450
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12451
12452
	* grub-core/loader/xnu.c (grub_xnu_writetree_toheap_real): Avoid set
12453
	in if.
12454
12455
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12456
12457
	* grub-core/loader/efi/appleloader.c (grub_cmd_appleloader): Move
12458
	diagnostic to dprintf.
12459
	* grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
12460
12461
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12462
12463
	* grub-core/kern/corecmd.c (grub_core_cmd_ls): Handle error in parsing
12464
	device name.
12465
12466
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12467
12468
	* grub-core/fs/ntfs.c (locate_attr): Avoid set in if.
12469
	(grub_ntfs_iterate_dir): Likewise.
12470
12471
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12472
12473
	Efiemu stylistic fixes and gettext.
12474
12475
	* grub-core/efiemu/i386/loadcore32.c
12476
	(grub_arch_efiemu_relocate_symbols32): Avoid set in if.
12477
	* grub-core/efiemu/i386/loadcore64.c
12478
	(grub_arch_efiemu_relocate_symbols64): Likewise.
12479
	* grub-core/efiemu/i386/pc/cfgtables.c
12480
	(grub_machine_efiemu_init_tables): Likewise.
12481
	* grub-core/efiemu/loadcore.c (grub_efiemu_resolve_symbols): Likewise.
12482
	(grub_efiemu_loadcore_initXX): Add a filename argument.
12483
	All users updated.
12484
	Improved error message.
12485
	* grub-core/efiemu/loadcore_common.c (grub_efiemu_loadcore_init):
12486
	Add a filename argument.
12487
	All users updated.
12488
	* grub-core/efiemu/symbols.c (grub_efiemu_set_virtual_address_map):
12489
	Reclassify double relocation as GRUB_ERR_BUG.
12490
12491
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12492
12493
	* grub-core/commands/i386/pc/play.c (grub_cmd_play): Improve error
12494
	handling.
12495
12496
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12497
12498
	* grub-core/commands/hdparm.c (grub_cmd_hdparm): Allow running
12499
	on partition.
12500
12501
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12502
12503
	* include/grub/misc.h (grub_error_save): Fix cleaning grub_errno.
12504
12505
2012-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
12506
12507
	Improve string. Gettextize.
12508
12509
2012-02-11  Vladimir Serbinenko  <phcoder@gmail.com>
12510
12511
	* configure.ac: Remove -Winline altogether and -Wmissing-prototypes on
12512
	utils.
12513
	* util/import_gcry.py: Add -Wno-strict-aliasing on checked modules.
12514
12515
2012-02-11  Vladimir Serbinenko  <phcoder@gmail.com>
12516
12517
	* grub-core/disk/diskfilter.c (grub_diskfilter_print_partmap)
12518
	[GRUB_UTIL]: New function.
12519
	(insert_array) [GRUB_UTIL]: Store partmaps.
12520
	* include/grub/diskfilter.h (grub_diskfilter_pv) [GRUB_UTIL]: New member
12521
	partmaps.
12522
	(grub_diskfilter_print_partmap) [GRUB_UTIL]: New proto.
12523
	* util/grub-probe.c (probe_partmap): Call grub_diskfilter_print_partmap.
12524
	(probe_abstraction): Print diskfilter and not raid.
12525
	Reported by: Lennart Sorensen
12526
12527
2012-02-11  Vladimir Serbinenko  <phcoder@gmail.com>
12528
12529
	* util/grub-mkimage.c (generate_image): Explicitly init decompress_size.
12530
	* util/grub-mkimagexx.c (MASK3): New define.
12531
	(add_value_to_slot_20b): Use MASK3.
12532
	(add_value_to_slot_21): Likewise.
12533
	(relocate_addresses): Fix format specification.
12534
	(load_image): Explicitly init symtab_section.
12535
12536
2012-02-11  Vladimir Serbinenko  <phcoder@gmail.com>
12537
12538
	* util/getroot.c (grub_find_root_devices_from_mountinfo): Fix types.
12539
	(grub_util_biosdisk_get_grub_dev): Fix format specification.
12540
12541
2012-02-11  Vladimir Serbinenko  <phcoder@gmail.com>
12542
12543
	* grub-core/kern/emu/full.c (grub_arch_dl_get_tramp_got_size): Enable
12544
	on powerpc.
12545
	Reported by: Lennart Sorensen
12546
12547
2012-02-11  Vladimir Serbinenko  <phcoder@gmail.com>
12548
12549
	* gentpl.py: Add missing license header.
12550
	* docs/grub.texi: Update copyright year.
12551
12552
2012-02-10  Grégoire Sutre  <gregoire.sutre@gmail.com>
12553
12554
	Source grub-mkconfig_lib from the build directory at build time.
12555
	Suggested by: Vladimir Serbinenko.
12556
12557
	* gentpl.py (manpage): Set pkgdatadir to $(builddir) on help2man call.
12558
	* util/grub-install.in: Define pkgdatadir if not already set, and source
12559
	grub-mkconfig_lib from there.
12560
	* util/grub-kbdcomp.in: Likewise.
12561
	* util/grub-mkconfig.in: Likewise.
12562
	* util/grub-mknetdir.in: Likewise.
12563
	* util/grub-mkrescue.in: Likewise.
12564
	* util/grub-mkstandalone.in: Likewise.
12565
	* util/grub-reboot.in: Likewise.
12566
	* util/grub-set-default.in: Likewise.
12567
	* util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
12568
12569
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12570
12571
	Increase warning level.
12572
12573
	* conf/Makefile.common (CFLAGS_GNULIB): Add -Wno-redundant-decls
12574
	-Wno-unreachable-code -Wno-conversion -Wno-old-style-definition.
12575
	* configure.ac (HOST_CFLAGS): Add bunch of -W arguments.
12576
	(TARGET_CFLAGS): Likewise.
12577
	(HOST_CFLAGS): Add -Werror unless --disable-werror is activated.
12578
	* grub-core/Makefile.core.def (decompressor_xz): Add
12579
	-Wno-unreachable-code.
12580
	(normal): Add -Wno-redundant-decls.
12581
	(xzio): Add -Wno-unreachable-code.
12582
	(lzopio): Add -Wno-redundant-decls -Wno-error.
12583
	* grub-core/commands/acpi.c: Add exception to -Wcast-align.
12584
	* grub-core/commands/lsacpi.c: Add exception to -Wcast-align.
12585
	* grub-core/gensymlist.sh: Add exception to -Wmissing-format-attribute.
12586
	* grub-core/kern/dl.c: Add exception to -Wcast-align.
12587
	* grub-core/kern/efi/efi.c (grub_efi_modules_addr): Likewise.
12588
	* grub-core/kern/i386/coreboot/init.c: Add exception to
12589
	-Wsuggest-attribute=noreturn.
12590
	* grub-core/kern/ia64/dl.c: Add exception to -Wcast-align.
12591
	* grub-core/kern/ia64/dl_helper.c: Likewise.
12592
	* grub-core/kern/mips/dl.c: Likewise.
12593
	* grub-core/kern/sparc64/dl.c: Likewise.
12594
	* grub-core/lib/LzmaEnc.c: Add exception to -Wshadow.
12595
	* grub-core/lib/libgcrypt_wrap/cipher_wrap.h (memcpy): Likewise.
12596
	(memcmp): Likewise.
12597
	* grub-core/lib/pbkdf2.c: Add exception to -Wunreachable-code.
12598
	* grub-core/loader/ia64/efi/linux.c: Add exception to -Wcast-align.
12599
	* grub-core/loader/mips/linux.c: Likewise.
12600
	* grub-core/loader/multiboot_elfxx.c: Likewise.
12601
	* grub-core/script/parser.y: Add exception to -Wunreachable-code.
12602
	* grub-core/video/sm712.c: Add exception to -Wcast-align.
12603
	* util/import_gcry.py: Add -Wno-cast-align to modules checked by hand.
12604
	* grub-core/font/font.c (grub_font_loader_init): Add explicit cast and
12605
	fixme.
12606
	* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Likewise.
12607
	* grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_init):
12608
	Fix prototype.
12609
12610
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12611
12612
	* grub-core/lib/i386/relocator16.S: Fix incorrect use of absolute
12613
	address.
12614
12615
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12616
12617
	* grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel):
12618
	Avoid improper use of strings.
12619
	(grub_cmd_legacy_initrdnounzip): Likewise.
12620
12621
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12622
12623
	* include/grub/emu/misc.h (grub_util_warn): Add missing format
12624
	attribute.
12625
	(grub_util_info): Likewise.
12626
	(grub_util_error): Likewise.
12627
12628
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12629
12630
	* util/grub-mount.c (fuse_init): Avoid improper use of strings.
12631
	* util/grub-fstest.c (fstest): Likewise.
12632
12633
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12634
12635
	* grub-core/disk/geli.c (grub_md_sha256_real): Respect format security.
12636
	(grub_md_sha512_real): Likewise.
12637
	(grub_util_get_geli_uuid): Likewise.
12638
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Likewise.
12639
	(grub_util_biosdisk_open): Fix format specification.
12640
	Respect format security.
12641
	* grub-core/kern/emu/misc.c (xmalloc): Respect format security.
12642
	(xrealloc): Likewise.
12643
	(xasprintf): Likewise.
12644
12645
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12646
12647
	* util/import_gcry.py: Include grub/crypto.h in init.c.
12648
12649
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12650
12651
	* util/grub-mkimage.c (compress_kernel_lzma): Respect format security.
12652
	(generate_image): Make prefix a const char *.
12653
	Fix format specifications. Respect format security.
12654
	Avoid void * arithmetics.
12655
	Avoid shadowing.
12656
	(argp_parser): Remove unused variable. Respect format security.
12657
	* util/grub-mkimagexx.c (relocate_symbols): Avoid shadowing.
12658
	(count_funcs) [!MKIMAGE_ELF64]: #if-out.
12659
	(count_funcs): Remove unused variable.
12660
	(relocate_addresses): Fix format specification.
12661
	Disable x86-64 with elf32. Remove unused variables.
12662
	(add_fixup_entry): Avoid shadowing.
12663
	(make_reloc_section): Fix format specification.
12664
	Use assert.
12665
	(locate_sections): Fix format specifications.
12666
	(load_image): Avoid shadowing.
12667
12668
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12669
12670
	* util/grub-setup.c (setup): Remove unused variable. Avoid shadowing.
12671
	Fix format specifications. Respect format security.
12672
	Don't translate already translated grub_errmsg.
12673
	(argp_parser): Remove unused variable
12674
12675
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12676
12677
	* util/grub-mkrelpath.c (argp_parser): Remove unused variable.
12678
12679
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12680
12681
	* util/grub-mkpasswd-pbkdf2.c (argp_parser): Remove unused variable.
12682
	(main): Likewise. Use xmalloc. Respect format security.
12683
12684
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12685
12686
	* util/grub-mklayout.c (console_grub_equivalence): Make "layout"
12687
	a const char *.
12688
	(argp_parser): Remove unused variable.
12689
12690
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12691
12692
	* util/grub-mkfont.c (grub_font_info): Make name a const char *.
12693
	(add_pixel): Make static.
12694
	(add_font): Likewise.
12695
	(write_string_section): Make name and str a const char *.
12696
	(write_be16_section): Make name a const char *.
12697
	(print_glyphs): Make static.
12698
	(write_font_ascii_bitmap): Likewise.
12699
	(write_font_width_spec): Likewise.
12700
	(write_font_pf2): Likewise.
12701
	(argp_parser): Remove unused variable.
12702
	Respect format security.
12703
	(main): Avoid shadowing. Respect format security.
12704
12705
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12706
12707
	* util/grub-editenv.c (argp_parser): Make static.
12708
	(create_envblk_file): Use xmalloc.
12709
	(open_envblk_file): Likewise.
12710
	Resepect format security.
12711
	(set_variables): Respect format security.
12712
12713
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12714
12715
	* util/getroot.c (grub_find_device): Respect format security.
12716
	(get_mdadm_uuid): Remove unused variable.
12717
	(grub_util_pull_device): Dont call gettext on already translated
12718
	grub_errmsg.
12719
	(find_system_device): Remove unused variable.
12720
	(grub_util_get_grub_dev): Likewise.
12721
	(grub_make_system_path_relative_to_its_root): Respect format security.
12722
12723
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12724
12725
	* util/grub-fstest.c (execute_command): Make first argument
12726
	a const char *.
12727
	(read_file): Avoid shadowing.
12728
	Reuse underlying error message if device open fails.
12729
	(cmd_cmp): Respect format security.
12730
	(root): Make const char *.
12731
	(fstest): Remove args argument and use global copy.
12732
	Respect format security.
12733
	(argp_parser): Make static.
12734
	(main): Make default_root const char *.
12735
12736
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12737
12738
	* util/grub-mount.c (root): Make const char *.
12739
	(execute_command): Make first argument a const char *.
12740
	(fuse_init): Respect format security.
12741
	(argp_parser): Make static. Remove unused variable.
12742
	(main):  Make default_root a const char *.
12743
	Respect format security.
12744
12745
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12746
12747
	* util/grub-probe.c (probe): Don't call gettext on already translated
12748
	grub_errmsg.
12749
	Remove unused variables.
12750
	(argp_parser): Remove unused variable.
12751
12752
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12753
12754
	* util/grub-script-check.c (argp_parser): Remove unused variable.
12755
	(main): Rename read to curread to avoid shadowing.
12756
12757
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12758
12759
	* util/misc.c (grub_util_write_image_at): Fix format specification.
12760
	(grub_util_write_image): Likewise.
12761
	(grub_script_execute_argument_to_string): Removed (unused).
12762
	(grub_script_execute_menuentry): Likewise.
12763
	(grub_putchar): Likewise.
12764
12765
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12766
12767
	* include/grub/symbol.h (EXT_C) [GRUB_UTIL]: Removed.
12768
	(FUNCTION) [GRUB_UTIL]: Likewise.
12769
	(VARIABLE) [GRUB_UTIL]: Likewise.
12770
12771
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12772
12773
	* include/grub/misc.h: Avoid evaluationg NEED_ENABLE_EXECUTE_STACK and
12774
	NEED_REGISTER_FRAME_INFO in GRUB_UTIL.
12775
12776
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12777
12778
	* grub-core/partmap/bsdlabel.c (iterate_real): Fix freeing of static
12779
	buffer.
12780
12781
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12782
12783
	* grub-core/lib/LzmaEnc.c (LzmaEnc_FastPosInit): Made static.
12784
	(LzmaEnc_SaveState): Removed (unused).
12785
	(LzmaEnc_RestoreState): Likewise.
12786
	(LzmaEnc_InitPriceTables): Made static.
12787
	(LzmaEnc_Construct): Likewise.
12788
	(LzmaEnc_FreeLits): Likewise.
12789
	(LzmaEnc_Destruct): Likewise.
12790
	(LzmaEnc_Init): Likewise.
12791
	(LzmaEnc_InitPrices): Likewise.
12792
	(LzmaEnc_Finish): Likewise.
12793
	(LzmaEnc_PrepareForLzma2): Removed (unused).
12794
	(LzmaEnc_MemPrepare): Likewise.
12795
	(LzmaEnc_GetNumAvailableBytes): Likewise.
12796
	(LzmaEnc_GetCurBuf): Likewise.
12797
	(LzmaEnc_CodeOneMemBlock): Likewise.
12798
12799
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12800
12801
	* grub-core/disk/ldm.c (grub_util_get_ldm): Remove unused variables.
12802
	(grub_util_ldm_embed): Likewise.
12803
12804
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12805
12806
	* util/grub-editenv.c (print_var): Rename name to varname to
12807
	avoid shadowing.
12808
	(main): Rename index to curindex to avoid shadowing.
12809
	Make filename a const char *.
12810
12811
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12812
12813
	* grub-core/script/lexer.c (grub_script_lexer_init): Rename getline
12814
	to arg_getline to avoid shadowing.
12815
12816
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12817
12818
	* grub-core/partmap/gpt.c (gpt_partition_map_embed): Rename disk to
12819
	disk_ to avoid shadowing.
12820
12821
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12822
12823
	* grub-core/lib/LzFind.c (MatchFinder_GetIndexByte): Rename index to
12824
	curindex to avoid shadowing.
12825
	Make static.
12826
	(MatchFinder_GetNumAvailableBytes): Make static.
12827
12828
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12829
12830
	* grub-core/fs/squash4.c (direct_read): Rename read to curread to
12831
	avoid shadowing.
12832
12833
2012-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
12834
12835
	* grub-core/disk/cryptodisk.c (grub_cryptodisk_endecrypt): Rename
12836
	argument from encrypt to do_encrypt to avoid shadowing.
12837
12838
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12839
12840
	* grub-core/loader/multiboot_elfxx.c (grub_multiboot_load_elf): Fix
12841
	incorrect nesting of #if's.
12842
12843
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12844
12845
	* grub-core/commands/lsacpi.c (disp_acpi_xsdt_table): #if'-out the
12846
	checks which are always false on some platforms.
12847
	(grub_cmd_lsacpi): Likewise.
12848
	* grub-core/kern/misc.c (grub_strtoul): Likewise.
12849
	* grub-core/loader/multiboot.c (grub_multiboot_set_video_mode):
12850
	Likewise.
12851
12852
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12853
12854
	* grub-core/disk/diskfilter.c (read_segment): Renome unreachable code.
12855
	* grub-core/net/ip.c (grub_net_recv_ip4_packets): Likewise.
12856
12857
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12858
12859
	* grub-core/gnulib/regex.h (re_pattern_buffer): Declare buffer as
12860
	re_dfa_t to avoid breaking alignment invariants.
12861
	* grub-core/gnulib/regex_internal.h (re_dfa_t): Moved to ...
12862
	* grub-core/gnulib/regex.h (re_dfa_t): ... here.
12863
12864
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12865
12866
	* grub-core/loader/i386/xnu.c (grub_xnu_boot): Fix printf.
12867
	* grub-core/loader/ia64/efi/linux.c (grub_cmd_fpswa): Likewise.
12868
12869
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12870
12871
	* grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_init):
12872
	Fix declaration.
12873
12874
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12875
12876
	* grub-core/bus/usb/ehci.c (grub_ehci_ehcc_read32): Restructure to
12877
	conserve alignment invariants.
12878
	(grub_ehci_ehcc_read16): Likewise.
12879
	(grub_ehci_oper_read32): Likewise.
12880
	(grub_ehci_oper_write32): Likewise.
12881
	(grub_ehci_pci_iter) [!GRUB_HAVE_UNALIGNED_ACCESS]: Check alignment.
12882
	Conserve alignment invariants.
12883
12884
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12885
12886
	* grub-core/kern/emu/full.c (grub_emu_post_init): Remove raid reinit.
12887
	* include/grub/disk.h [GRUB_MACHINE_EMU]: Remove now useless LVM/RAID
12888
	declarations.
12889
12890
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12891
12892
	* grub-core/kern/emu/hostfs.c (grub_hostfs_close):
12893
	Remove unused variable.
12894
12895
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12896
12897
	* grub-core/efiemu/loadcore_common.c (grub_efiemu_loadcore_load):
12898
	Remove set in if.
12899
12900
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12901
12902
	* include/grub/net.h: Remove double declarations.
12903
12904
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12905
12906
	Remove "payload" command in ia64 Linux loader since I couldn't
12907
	find any evidence of it being used for anything.
12908
	Replace "relocate" command with an environment variable
12909
12910
	* grub-core/loader/ia64/efi/linux.c (ia64_boot_param): Remove extra
12911
	fields.
12912
	(ia64_boot_payload): Removed.
12913
	(last_payload): Likewise.
12914
	(RELOCATE_OFF): Likewise.
12915
	(RELOCATE_ON): Likewise.
12916
	(RELOCATE_FORCE): Likewise.
12917
	(relocate): Likewise.
12918
	(free_pages): Don't free payloads.
12919
	(grub_load_elf64): Use common error messages.
12920
	Use "linux_relocate" variable.
12921
	Increase the space after boot_params.
12922
	(grub_cmd_payload): Removed.
12923
	(grub_cmd_relocate): Likewise.
12924
	(grub_cmd_fpswa): Improve messages.
12925
	(cmd_payload): Removed.
12926
	(cmd_relocate): Likewise.
12927
	(GRUB_MOD_INIT): Don't register "payload" and "relocate".
12928
	(GRUB_MOD_FINI): Don't unregister "payload" and "relocate".
12929
12930
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12931
12932
	Convert UHCI to DMA framework.
12933
12934
	* grub-core/bus/usb/uhci.c (grub_uhci): Add chunk and phys members.
12935
	(grub_uhci_pci_iter): Fill new members
12936
	(grub_alloc_td): Use P2V and V2P functions.
12937
	(grub_free_queue): Likewise.
12938
	(grub_alloc_qh): Likewise.
12939
	(grub_uhci_setup_transfer): Likewise.
12940
	(grub_uhci_check_transfer): Likewise.
12941
12942
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12943
12944
	* grub-core/video/colors.c (grub_video_parse_color): Fix error message.
12945
	Remove assignment in if while on it.
12946
12947
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12948
12949
	* util/grub-mkstandalone.in: Fix modules directory.
12950
12951
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12952
12953
	* util/grub-mkimage.c (image_targets): Set default_compression to lzma
12954
	on i386-pc target.
12955
	(argp_parser): Accept "auto" as compression specification.
12956
12957
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12958
12959
	Fix `help' with unloaded modules.
12960
12961
	* include/grub/normal.h (grub_dyncmd_get_cmd): New proto.
12962
	* grub-core/normal/dyncmd.c (grub_dyncmd_get_cmd): New function.
12963
	(grub_dyncmd_dispatcher): Small stylistic fix.
12964
	* grub-core/commands/help.c (grub_cmd_help): Load missing modules when
12965
	explicit help is requested.
12966
12967
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12968
12969
	* grub-core/fs/cpio.c (grub_cpio_dir): Fix a bug with multiple listing.
12970
	Explicitly init restart while on it.
12971
12972
2012-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
12973
12974
	* grub-core/lib/posix_wrap/wchar.h (mbrtowc): Set pwc to zero to avoid
12975
	uninited variable.
12976
12977
2012-02-08  Vladimir Serbinenko  <phcoder@gmail.com>
12978
12979
	* util/grub-mknetdir.in: Use . rather than source for POSIX
12980
	compatibility.
12981
12982
2012-02-08  Vladimir Serbinenko  <phcoder@gmail.com>
12983
12984
	* util/grub-probe.c (main): Fix trailing space in compatibility hint.
12985
12986
2012-02-08  Vladimir Serbinenko  <phcoder@gmail.com>
12987
12988
	* grub-core/kern/partition.c (grub_partition_get_name): Fix uninited
12989
	variable.
12990
12991
2012-02-08  Vladimir Serbinenko  <phcoder@gmail.com>
12992
12993
	* grub-core/commands/hdparm.c (grub_cmd_hdparm): Accept device name
12994
	without quotes.
12995
12996
2012-02-08  Vladimir Serbinenko  <phcoder@gmail.com>
12997
12998
	* grub-core/net/net.c (GRUB_MOD_INIT): Don't register netfs.
12999
13000
2012-02-08  Vladimir Serbinenko  <phcoder@gmail.com>
13001
13002
	* grub-core/kern/partition.c (grub_partition_get_name): Fix reverse
13003
	iteration of partitions.
13004
13005
2012-02-08  Vladimir Serbinenko  <phcoder@gmail.com>
13006
13007
	Improve gettext support. Stylistic fixes and error handling fixes while
13008
	on it.
13009
13010
2012-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
13011
13012
	* grub-core/lib/i386/relocator16.S: Revert moving A20 code into PM
13013
	part. Instead setup the correct stack in RM.
13014
	* grub-core/lib/i386/relocator.c (grub_relocator16_boot): Reserve place
13015
	for stack.
13016
	* include/grub/i386/relocator_private.h: New file.
13017
13018
2012-02-05  Vladimir Serbinenko  <phcoder@gmail.com>
13019
13020
	* grub-core/commands/minicmd.c (GRUB_MOD_INIT): Add missing SIZE
13021
	argument.
13022
	* util/grub-fstest.c (options): Add missing DEVICE part.
13023
13024
2012-02-05  Vladimir Serbinenko  <phcoder@gmail.com>
13025
13026
	Clarify and unify messages.
13027
13028
	* grub-core/commands/hashsum.c (options): Unify messages.
13029
	* grub-core/commands/keystatus.c (GRUB_MOD_INIT): Don't mark a
13030
	literal-only message as translatable.
13031
	* grub-core/commands/lsacpi.c (GRUB_MOD_INIT): Likewise.
13032
	* grub-core/loader/ia64/efi/linux.c (GRUB_MOD_INIT): Likewise.
13033
	* grub-core/commands/legacycfg.c (GRUB_MOD_INIT): Add quoting around
13034
	commands.
13035
	* grub-core/commands/menuentry.c (options): Clarify that it's a keyboard
13036
	key, not the key used to unlock. Clarify what it's used for.
13037
	* grub-core/kern/emu/hostdisk.c (read_device_map): Unify error message.
13038
	* grub-core/loader/xnu.c (grub_xnu_load_driver): Remove erroneous colon.
13039
	* grub-core/script/main.c (GRUB_MOD_INIT): Clarify [n] to be [NUM].
13040
	* util/grub-editenv.c (options): Unify "verbose" message.
13041
	* util/grub-fstest.c (read_file): Unify error message.
13042
	(fstest): Add quotes around commands.
13043
	(options): Unify "verbose" message.
13044
	* util/grub-install.in: Add quotes around variable name.
13045
	* util/grub-kbdcomp.in: Unify error message.
13046
	* util/grub-mkfont.c (main): Likewise.
13047
	* util/grub-mkrescue.in: Likewise.
13048
	* util/grub-mklayout.c (options): Unify "verbose" message.
13049
	* util/grub-mkstandalone.in: Unify help and verbose messages.
13050
	* util/grub-mount.c (options): Unify "verbose" message.
13051
	* util/grub-probe.c (options): Likewise.
13052
	* util/grub-script-check.c (options): Likewise.
13053
	* util/grub-setup.c (setup): Unify no-terminator message.
13054
	(options): Use DEVICE and not DEV.
13055
	Unify "verbose" message.
13056
	* util/ieee1275/ofpath.c (xrealpath): Unify error message.
13057
13058
2012-02-05  Vladimir Serbinenko  <phcoder@gmail.com>
13059
13060
	Improve and unify messages.
13061
13062
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Add argument
13063
	name. All users updated.
13064
	Print filename in error.
13065
	(read_device_map): Print filename in error.
13066
	* util/getroot.c (grub_guess_root_devices): Print filename in error.
13067
	(grub_util_get_os_disk): Likewise.
13068
	(grub_util_biosdisk_get_grub_dev): Likewise.
13069
	(grub_util_check_block_device): Likewise.
13070
	(grub_util_check_char_device): Likewise.
13071
	(grub_make_system_path_relative_to_its_root): Likewise.
13072
	* util/grub-editenv.c (create_envblk_file): Likewise.
13073
	(open_envblk_file): Likewise.
13074
	(write_envblk): Likewise.
13075
	* util/grub-fstest.c (cmd_cp): Likewise.
13076
	(cmd_cat): Likewise.
13077
	(cmd_cmp): Likewise.
13078
	* util/grub-menulst2cfg.c (main): Likewise.
13079
	* util/grub-mkfont.c (write_font_ascii_bitmap): Likewise.
13080
	(write_font_width_spec): Likewise.
13081
	(write_font_pf2): Likewise.
13082
	* util/grub-mkimage.c (generate_image): New argument outname.
13083
	All users updated.
13084
	Remove unreacheable message.
13085
	(options): Unify messages.
13086
	(help_filter): Likewise.
13087
	* util/grub-mklayout.c (usage): Removed (unused).
13088
	(main): Print filename in error.
13089
	* util/grub-mkrescue.in: Fix wrong quoting.
13090
	* util/grub-setup.c (setup): Print filename in error.
13091
	* util/ieee1275/ofpath.c (vendor_is_ATA): Likewise.
13092
	(check_sas): Likewise.
13093
	* util/misc.c (grub_util_get_fp_size): Removed.
13094
	(grub_util_get_image_size): Print filename in error.
13095
	(grub_util_read_at): Removed.
13096
	(grub_util_read_image): Print filename in error.
13097
	(grub_util_load_image): Likewise.
13098
	(grub_util_write_image_at): New argument filename. All users updated.
13099
	Print filename in error.
13100
	(grub_util_write_image): New argument filename. All users updated.
13101
	Print filename in error.
13102
	* util/raid.c (grub_util_raid_getmembers): Print filename in error.
13103
	* util/resolve.c (grub_util_resolve_dependencies): Likewise.
13104
13105
2012-02-05  Vladimir Serbinenko  <phcoder@gmail.com>
13106
13107
	* grub-core/Makefile.core.def (pxechain): New module.
13108
	* grub-core/loader/i386/pc/pxechainloader.c: New file.
13109
	* grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_get_cached): New
13110
	function.
13111
	(grub_pc_net_config_real): Use grub_pxe_get_cached.
13112
	* include/grub/i386/pc/pxe.h (grub_pxe_get_cached): New proto.
13113
13114
2012-02-05  Vladimir Serbinenko  <phcoder@gmail.com>
13115
13116
	* grub-core/kern/err.c (GRUB_MAX_ERRMSG): Move to ...
13117
	* include/grub/err.h (GRUB_MAX_ERRMSG): ... here.
13118
	* include/grub/err.h (grub_error_saved): New struct.
13119
	(grub_errmsg): Make array size explicit.
13120
	* include/grub/misc.h (grub_error_save): New function.
13121
	(grub_error_load): Likewise.
13122
	* grub-core/kern/err.c (grub_error_stack_items): Use grub_error_saved.
13123
	(grub_error_push): Update `errno' member name.
13124
	(grub_error_pop): Likewise
13125
	* grub-core/net/tftp.c (tftp_data): New member save_err.
13126
	(tftp_receive): Save error.
13127
	(tftp_open): Restore error.
13128
13129
2012-02-05  Vladimir Serbinenko  <phcoder@gmail.com>
13130
13131
	* grub-core/lib/i386/relocator16.S (grub_relocator16_start): Move switch
13132
	to real mode down to execute A20-related code in protected mode as
13133
	intended.
13134
13135
2012-02-05  Grégoire Sutre  <gregoire.sutre@gmail.com>
13136
13137
	* grub-core/disk/diskfilter.c (grub_diskfilter_make_raid): Return
13138
	NULL when the argument `level' has an unexpected value.
13139
13140
2012-02-04  Vladimir Serbinenko  <phcoder@gmail.com>
13141
13142
	Move platform-dependent files from $prefix to $prefix/$platform.
13143
13144
	* config.h.in (GRUB_TARGET_CPU): New definition.
13145
	(GRUB_PLATFORM): Likewise.
13146
	* configure.ac: Define GRUB_TARGET_CPU and GRUB_PLATFORM.
13147
	* grub-core/commands/parttool.c (grub_cmd_parttool): Update dir.
13148
	* grub-core/efiemu/main.c (grub_efiemu_autocore): Likewise.
13149
	* grub-core/kern/dl.c (grub_dl_load): Likewise.
13150
	* grub-core/normal/autofs.c (read_fs_list): Likewise.
13151
	* grub-core/normal/crypto.c (read_crypto_list): Likewise.
13152
	* grub-core/normal/dyncmd.c (read_command_list): Likewise.
13153
	* grub-core/normal/term.c (read_terminal_list): Likewise.
13154
	* grub-core/gettext/gettext.c (grub_mofile_open_lang): Use
13155
	$prefix/locale.
13156
	(grub_gettext_init_ext): Likewise.
13157
	* grub-core/normal/main.c (GRUB_MOD_INIT): Define grub_cpu and
13158
	grub_platform.
13159
	* util/grub-install.in: Update directories.
13160
	* util/grub-mknetdir.in: Likewise.
13161
	* util/grub-mkrescue.in: Likewise.
13162
13163
2012-02-04  Vladimir Serbinenko  <phcoder@gmail.com>
13164
13165
	* grub-core/kern/ieee1275/openfw.c (grub_claimmap): Change to
13166
	grub_error framework. All users updated.
13167
13168
2012-02-04  Vladimir Serbinenko  <phcoder@gmail.com>
13169
13170
	* grub-core/gettext/gettext.c: Mostly rewritten to avoid using
13171
	lists (by always binsearching), improve caching (cache strings
13172
	used for binsearch, not only results), improve
13173
	maintainability (by using more structured binary search) and correct
13174
	error handling.
13175
13176
2012-02-04  Vladimir Serbinenko  <phcoder@gmail.com>
13177
13178
	* grub-core/script/execute.c (grub_script_return): Fix warning.
13179
13180
2012-02-04  Vladimir Serbinenko  <phcoder@gmail.com>
13181
13182
	* grub-core/script/execute.c (grub_script_return): Fix potential
13183
	NULL-dereference.
13184
	Reported by: Jim Meyering.
13185
13186
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13187
13188
	* po/POTFILES.in: Regenerate.
13189
	* util/grub-install.in: Gettextize the strings missed in first pass.
13190
13191
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13192
13193
	* Makefile.util.def (grub-mkdevicemap): Removed.
13194
	* include/grub/emu/hostdisk.h (grub_util_get_os_disk): New proto.
13195
	* include/grub/util/deviceiter.h: Removed.
13196
	* util/deviceiter.c: Likewise.
13197
	* util/getroot.c (grub_util_get_os_disk): New function.
13198
	* util/grub-install.in: Remove grub-mkdevicemap. Use -t disk as
13199
	replacement for EFI.
13200
	* util/grub-mkdevicemap.c: Removed.
13201
	* util/grub-probe.c (probe): Handle PRINT_DISK.
13202
	(argp_parser): Handle -t disk.
13203
13204
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13205
13206
	* util/grub-mkfont.c: Migrate to argp.
13207
	* util/grub-mklayout.c: Likewise.
13208
	* util/grub-mkpasswd-pbkdf2.c: Likewise.
13209
	* util/grub-mkrelpath.c: Likewise.
13210
	* util/grub-probe.c: Likewise.
13211
	* util/grub-script-check.c: Likewise.
13212
13213
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13214
13215
	* util/grub-reboot.in: Add missing datarootdir.
13216
	Add missing newline.
13217
	* util/grub-set-default.in: Add missing datarootdir.
13218
	* util/powerpc/ieee1275/grub-mkrescue.in: Add missing newline.
13219
	* util/grub-mkrescue.in: Likewise.
13220
13221
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13222
13223
	* util/grub.d/30_os-prober.in: Fix TRANSLATORS comment.
13224
13225
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13226
13227
	* util/grub-kbdcomp.in: Add decent help and gettextize.
13228
	* docs/man/grub-kbdcomp.h2m: New file.
13229
13230
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13231
13232
	Migrate grub-mkimage.c to argp.
13233
13234
	* Makefile.util.def (grub-mkimage): Add util/argp_common.c.
13235
	(grub-setup): Likewise.
13236
	* util/grub-setup.c (print_version): Move to ...
13237
	* util/argp_common.c (print_version): ... here.
13238
	* util/grub-setup.c (argp_program_version_hook): Move to ...
13239
	* util/argp_common.c (argp_program_version_hook): ... here.
13240
	* util/grub-setup.c (argp_parser): Add exit (1) on fatal error for
13241
	safety.
13242
	* util/grub-mkimage.c (main): Migrate to argp.
13243
13244
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13245
13246
	* util/grub-mkrescue.in: Use same message as
13247
	util/powerpc/ieee1275/grub-mkrescue.in with %s in place of command
13248
	for better translations.
13249
13250
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13251
13252
	* util/powerpc/ieee1275/grub-mkrescue.in: Gettextize. Unify the command
13253
	options with generic grub-mkrescue.in with the goal of future
13254
	merge.
13255
13256
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13257
13258
	* grub-core/kern/mm.c: Add missing include of i18n.h
13259
	* grub-core/lib/relocator.c: Likewise.
13260
13261
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13262
13263
	* grub-core/loader/ia64/efi/linux.c (find_mmap_size): Replace fatal with
13264
	error.
13265
	(allocate_pages): Check return value.
13266
	Replace fatal with error.
13267
	(grub_linux_boot): Replace printf with dprintf.
13268
	Check find_mmap_size return value.
13269
	Replace fatal with error.
13270
	Don't call grub_machine_fini.
13271
	(grub_load_elf64): Replace printf with dprintf.
13272
	(grub_cmd_linux): Likewise.
13273
	(grub_cmd_initrd): Likewise.
13274
	(grub_cmd_payload): Likewise.
13275
13276
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13277
13278
	* grub-core/loader/i386/xnu.c (grub_cmd_devprop_load): Fix error
13279
	message.
13280
	* grub-core/video/radeon_fuloong2e.c
13281
	(grub_video_radeon_fuloong2e_setup): Likewise.
13282
	* grub-core/video/sis315pro.c (grub_video_sis315pro_setup): Likewise.
13283
	* grub-core/video/video.c (grub_video_set_mode): Don't override
13284
	standard out of memory message.
13285
13286
2012-02-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
13287
13288
	NetBSD disk wedge support.
13289
13290
	* grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start)
13291
	[__NetBSD__]: Handle NetBSD disk wedges.
13292
	* util/getroot.c (convert_system_partition_to_system_disk)
13293
	[__NetBSD__]: Likewise.
13294
13295
2012-02-03  Mark Wooding <mdw@distorted.org.uk>
13296
13297
	* util/grub-mkconfig.in: Use umask rather than chmod to create
13298
	grub.cfg.new to avoid insecure grub.cfg.
13299
13300
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13301
13302
        * grub-core/commands/ls.c: Gettextize.
13303
        * grub-core/commands/setpci.c: Likewise.
13304
        * grub-core/commands/videotest.c: Likewise.
13305
        * grub-core/disk/geli.c: Likewise.
13306
        * grub-core/kern/mm.c: Likewise.
13307
        * grub-core/lib/relocator.c: Likewise.
13308
        * grub-core/loader/efi/appleloader.c: Likewise.
13309
        * grub-core/loader/i386/xnu.c: Likewise.
13310
        * grub-core/loader/ia64/efi/linux.c: Likewise.
13311
        * grub-core/loader/xnu.c: Likewise.
13312
        * grub-core/net/dns.c: Likewise.
13313
        * grub-core/net/net.c: Likewise.
13314
        * grub-core/script/lexer.c: Likewise.
13315
        * grub-core/script/parser.y: Likewise.
13316
        * grub-core/script/yylex.l: Likewise.
13317
        * util/getroot.c: Likewise.
13318
        * util/grub-setup.c: Likewise.
13319
13320
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13321
13322
	* grub-core/fs/reiserfs.c (grub_reiserfs_get_item): Use proper error
13323
	number.
13324
13325
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13326
13327
	* grub-core/disk/ldm.c (grub_util_ldm_embed): Correct error message.
13328
13329
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13330
13331
	* grub-core/commands/search_file.c (SEARCH_TARGET): Remove obsolete
13332
	macro.
13333
	* grub-core/commands/search_label.c (SEARCH_TARGET): Likewise.
13334
	* grub-core/commands/search_uuid.c (SEARCH_TARGET): Likewise.
13335
13336
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13337
13338
	* util/grub-mkstandalone.in: Fix help messages. Gettextize.
13339
	* util/grub-install.in: Gettextize.
13340
	* util/grub-mkconfig.in: Likewise.
13341
	* util/grub-mkconfig_lib.in: Replace gettext with echo -n and not echo
13342
	if not available.
13343
	(grub_warn): Gettextize.
13344
	* util/grub-mknetdir.in: Gettextize.
13345
	* util/grub-mkrescue.in: Likewise.
13346
	* util/grub-mkstandalone.in: Likewise.
13347
	* util/grub-reboot.in: Likewise.
13348
	* util/grub-set-default.in: Likewise.
13349
	* util/grub.d/00_header.in: Likewise.
13350
	* util/grub.d/10_hurd.in: Likewise.
13351
	* util/grub.d/10_kfreebsd.in: Likewise.
13352
	* util/grub.d/10_linux.in: Likewise.
13353
	* util/grub.d/10_netbsd.in: Likewise.
13354
	* util/grub.d/10_windows.in: Likewise.
13355
	* util/grub.d/20_linux_xen.in: Likewise.
13356
	* util/grub.d/30_os-prober.in: Likewise.
13357
	* po/POTFILES-shell.in: Regenerate.
13358
13359
2012-02-03  Richard Laager <rlaager@wiktel.com>
13360
13361
	* util/grub-mkimage.c (main): Fix format-security warning.
13362
	* util/grub-mkrelpath.c (main): Likewise.
13363
	* util/grub-probe.c (main): Likewise.
13364
13365
2012-02-03  Richard Laager <rlaager@wiktel.com>
13366
13367
	* util/grub-probe.c (probe): Don't crash on canonicalize_file_name
13368
	failure.
13369
	Put back lost PRINT_DRIVE.
13370
13371
2012-02-03  Richard Laager <rlaager@wiktel.com>
13372
13373
	* util/getroot.c (find_root_devices_from_libzfs): Fix compilation error.
13374
	(grub_guess_root_devices): Replace strlen with sizeof.
13375
	Avoid crash.
13376
	(find_root_devices_from_poolname): Remove unused variable.
13377
	Handle raidzN.
13378
13379
2012-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
13380
13381
	Support install on multi-device filesystems.
13382
13383
	* include/grub/emu/getroot.h (grub_guess_root_device): Renamed to ...
13384
	(grub_guess_root_devices): ...this. Return char **. All users updated.
13385
	* include/grub/emu/misc.h (grub_find_root_device_from_mountinfo):
13386
	Removed.
13387
	* util/getroot.c (find_root_device_from_libzfs): Moved pool logic to ...
13388
	(find_root_devices_from_poolname): ... here.
13389
	(grub_find_root_devices_from_mountinfo): Return char **. Make static.
13390
	Support zfs-fuse.
13391
	(grub_guess_root_device): Rename to ...
13392
	(grub_guess_root_devices): ... this. Return char **. All users updated.
13393
	* util/grub-install.in: Handle multi-device filesystems.
13394
	* util/grub-probe.c (probe). Make device_names a char **. Add delim
13395
	argument. All users updated.
13396
	Handle multi-device filesystems.
13397
	Use 'delim' as separator.
13398
	Remove device check to allow filesystems on file.
13399
	(main): Support -0 argument. Handle multi-device.
13400
	* util/grub-setup.c (setup): Remove root argument. Handle multi-device.
13401
	Fix a cross-device check while on it.
13402
	(arguments): Remove root_dev.
13403
	(argp_parser): Remove -r.
13404
	(main): Remove root_dev.
13405
13406
2012-02-01  Vladimir Serbinenko  <phcoder@gmail.com>
13407
13408
	* grub-core/fs/zfs/zfscrypt.c: Add link to documentation.
13409
13410
2012-02-01  Vladimir Serbinenko  <phcoder@gmail.com>
13411
13412
	* grub-core/commands/videotest.c (grub_cmd_videotest): Fix subset
13413
	symbol.
13414
	Reported by: NODA, Kai <nodakai>.
13415
13416
2012-02-01  Vladimir Serbinenko  <phcoder@gmail.com>
13417
13418
	Fix ehci on amd64.
13419
13420
	* grub-core/bus/usb/usbhub.c (grub_usb_hub_add_dev): Use %p to print
13421
	pointers.
13422
	* grub-core/bus/usb/ehci.c (grub_ehci_pci_iter): Likewise.
13423
	(grub_ehci_setup_qh): Likewise.
13424
	(grub_ehci_find_qh): Likewise.
13425
	(grub_ehci_transaction): Likewise.
13426
	(grub_ehci_setup_transfer): Likewise.
13427
	(grub_ehci_check_transfer): Likewise.
13428
	(grub_ehci_portstatus): Likewise.
13429
	(grub_ehci_detect_dev): Likewise.
13430
	(grub_ehci_transfer_controller_data): New field td_last_phys.
13431
	(grub_ehci_setup_transfer): Fill td_last_phys.
13432
	(grub_ehci_check_transfer): Use td_last_phys.
13433
13434
2012-02-01  Seth Goldberg <seth.goldberg@oracle.com>
13435
13436
	* grub-core/normal/context.c (grub_env_extractor_close): Don't crash
13437
	if no submenu is present.
13438
13439
2012-02-01  Aleš Nesrsta <starous@volny.cz>
13440
13441
	CBI support.
13442
13443
	* include/grub/usb.h (grub_usbms_protocol_t): New values
13444
	GRUB_USBMS_PROTOCOL_CB and GRUB_USBMS_PROTOCOL_CBI.
13445
	* grub-core/disk/usbms.c (GRUB_USBMS_CBI_CMD_SIZE): New define.
13446
	(GRUB_USBMS_CBI_ADSC_REQ): Likewise.
13447
	(grub_usbms_dev): Add subclass, protocol and intrpt.
13448
	Remove in_maxsz and out_maxsz.
13449
	(grub_usbms_reset): Rename to ...
13450
	(grub_usbms_bo_reset): .. this.
13451
	(grub_usbms_cbi_cmd): New function.
13452
	(grub_usbms_cbi_reset): Likewise.
13453
	(grub_usbms_reset): Likewise.
13454
	(grub_usbms_attach): Recognize cbi. Same subclass and protocol.
13455
	(grub_usbms_transfer): Rename to ...
13456
	(grub_usbms_transfer_bo): ... this.
13457
	(grub_usbms_transfer_cbi): Likewise.
13458
	(grub_usbms_transfer): Likewise.
13459
13460
2012-02-01  Aleš Nesrsta <starous@volny.cz>
13461
2012-02-01  Vladimir Serbinenko  <phcoder@gmail.com>
13462
13463
	EHCI support. All of the credit goes to Aleš Nesrsta. I've just added
13464
	the support for the CS5536 modification thereos and few bugfixes.
13465
13466
	* grub-core/Makefile.core.def (ehci): New module.
13467
	* grub-core/bus/usb/ehci.c: New file.
13468
	* grub-core/bus/usb/usbhub.c (grub_usb_hub_add_dev): New arguments
13469
	port and hubaddr. All users updated.
13470
	Save port and hubaddr into dev structure.
13471
	* include/grub/cs5536.h (GRUB_CS5536_MSR_USB_BASE_SMI_ENABLE): New
13472
	define.
13473
	* include/grub/pci.h (grub_dma_phys2virt): New function.
13474
	(grub_dma_virt2phys): Likewise.
13475
	* include/grub/usb.h (grub_usb_device): New members port and hubaddr.
13476
13477
2012-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
13478
13479
	* grub-core/fs/fat.c (grub_fat_mount) [!MODE_EXFAT]: Remove fstype
13480
	check as some mkfs implementations omit it.
13481
13482
2012-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
13483
13484
	* docs/grub.texi (Unicode): Mention identifier and space limitations.
13485
13486
2012-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
13487
13488
	* grub-core/fs/jfs.c (grub_jfs_sblock): Make volname a char array.
13489
	Add new member volname2.
13490
	(grub_jfs_label): Use volname2 if available.
13491
13492
2012-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
13493
13494
	* grub-core/fs/nilfs2.c (grub_nilfs2_super_block): Expand volume_name
13495
	over last_mounted as seen in image generated by mkfs.nilfs2.
13496
	(grub_nilfs2_label): Use sizeof for the size of s_volume_name.
13497
13498
2012-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
13499
13500
	* grub-core/fs/fat.c (grub_fat_dir_entry) [MODE_EXFAT]: Expand label
13501
	to 15 UTF-16 characters as seen in FS generated by mkexfatfs.
13502
	(grub_fat_label) [MODE_EXFAT]: Use macros for size.
13503
13504
2012-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
13505
13506
	* grub-core/fs/romfs.c (grub_romfs_mount): Fix a bug with labels going
13507
	over the sector.
13508
13509
2012-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
13510
13511
	* grub-core/fs/zfs/zfs.c (get_filesystem_dnode): Support space in
13512
	subvolume name (by removing a bogus and useless check).
13513
13514
2012-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
13515
13516
	* grub-core/fs/ext2.c (grub_ext2_label): Fix field size. Change to
13517
	sizeof while on it.
13518
13519
2012-01-30  Vladimir Serbinenko  <phcoder@gmail.com>
13520
13521
	* grub-core/disk/scsi.c (grub_scsi_read_capacity): Renamed to ...
13522
	(grub_scsi_read_capacity10): ... this.
13523
	(grub_scsi_read_capacity16): New function.
13524
	(grub_scsi_open): Use read_capacity16 if read_capacity10 returned
13525
	0xffffffff.
13526
	Fix off-by-one error.
13527
	* include/grub/scsi.h (grub_scsi): Rename size to last_block and make it
13528
	64-bit unsigned.
13529
	* include/grub/scsicmd.h (grub_scsi_read_capacity): Rename to ...
13530
	(grub_scsi_read_capacity10): ... this.
13531
	(grub_scsi_read_capacity_data): Rename to ...
13532
	(grub_scsi_read_capacity10_data): ... this. Rename size to last_block.
13533
	(grub_scsi_read_capacity16): New struct.
13534
	(grub_scsi_read_capacity16_data): Likewise.
13535
	(grub_scsi_cmd_t): Rename grub_scsi_cmd_read_capacity to
13536
	grub_scsi_cmd_read_capacity10.
13537
	New command grub_scsi_cmd_read_capacity16.
13538
13539
2012-01-30  Vladimir Serbinenko  <phcoder@gmail.com>
13540
13541
	SCSI >2TiB support.
13542
13543
	* grub-core/disk/scsi.c (grub_scsi_read16): New function.
13544
	(grub_scsi_write16): Likewise.
13545
	(grub_scsi_read): Use read16 when necessary.
13546
	(grub_scsi_write): Likewise.
13547
	* include/grub/scsicmd.h (grub_scsi_read16): New struct.
13548
	(grub_scsi_write16): Likewise.
13549
	(grub_scsi_cmd_t): Add READ16 and WRITE16.
13550
13551
2012-01-30  Vladimir Serbinenko  <phcoder@gmail.com>
13552
13553
	SCSI write support (for usbms mainly).
13554
13555
	* grub-core/disk/scsi.c (grub_scsi_write10): Uncomment. Make buffer
13556
	a const pointer.
13557
	(grub_scsi_write): Implement.
13558
	* include/grub/scsi.h (grub_scsi_dev): Make write buffer a const pointer
13559
13560
2012-01-30  Vladimir Serbinenko  <phcoder@gmail.com>
13561
13562
	* grub-core/io/lzopio.c (uncompress_block): Fix use of incorrect
13563
	variable.
13564
13565
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13566
13567
	* grub-core/lib/posix_wrap/string.h (memchr): New function.
13568
13569
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13570
13571
	* po/POTFILES.in: Regenerate.
13572
13573
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13574
13575
	* grub-core/lib/posix_wrap/assert.h (assert_real): Replace grub_fatal
13576
	with grub_printf to avoid unnecessary fatal failure.
13577
13578
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13579
13580
	* grub-core/lib/posix_wrap/limits.h (SHRT_MAX): New define.
13581
	(INT_MAX): Likewise.
13582
	* grub-core/lib/posix_wrap/stdio.h (snprintf): New function.
13583
	* grub-core/lib/posix_wrap/stdlib.h (abs): Likewise.
13584
	* grub-core/lib/posix_wrap/string.h (memcmp): Likewise.
13585
	(strcpy): Likewise.
13586
	(strstr): Likewise.
13587
	(strchr): Likewise.
13588
	(strncpy): Likewise.
13589
	(strcat): Likewise.
13590
	(strncat): Likewise.
13591
	(strcoll): Likewise.
13592
	* include/grub/types.h (GRUB_SHRT_MAX): New define.
13593
	(GRUB_INT_MAX): Likewise.
13594
13595
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13596
13597
	* grub-core/gnulib/regcomp.c (regerror): Don't use abort on
13598
	unexpected error.
13599
	(optimize_utf8): Likewise.
13600
	* grub-core/lib/posix_wrap/stdlib.h (abort): Removed.
13601
13602
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13603
13604
	* grub-core/boot/i386/pc/lnxboot.S: Use
13605
	GRUB_DECOMPRESSOR_MAX_DECOMPRESSOR_SIZE.
13606
	* grub-core/boot/i386/pc/startup_raw.S: Ensure about boot_dev
13607
	location.
13608
	* include/grub/offsets.h (GRUB_DECOMPRESSOR_I386_PC_BOOT_DEVICE): New
13609
	definition.
13610
	(GRUB_DECOMPRESSOR_I386_PC_MAX_DECOMPRESSOR_SIZE): Likewise.
13611
13612
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13613
13614
	* util/getroot.c (grub_util_get_dm_node_linear_info): Fix memory leak.
13615
	* grub-core/disk/cryptodisk.c (cryptodisk_cleanup): Disable for
13616
	now to avoid double free.
13617
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_dev): Rename to
13618
	hostdisk.
13619
	* include/grub/disk.h (grub_disk_dev_id): New id HOSTDISK.
13620
	* util/grub-probe.c (escape_of_path): Always return a new copy.
13621
	(print_full_name): Escape path.
13622
	(probe): Don't call grub_util_devname_to_ofpath on NULL.
13623
	Fix hints on abstractions.
13624
13625
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13626
13627
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device):
13628
	Don't add "root" line if no compatibility hont is available.
13629
	Suggested by: Seth Goldberg.
13630
13631
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13632
13633
	* include/grub/ata.h (grub_ata): Add a new element maxbuffer.
13634
	* grub-core/disk/ata.c (grub_ata_readwrite): Limit to ata->maxbuffer.
13635
	* grub-core/disk/pata.c (grub_pata_open): Set ata->maxbuffer.
13636
	* grub-core/disk/ahci.c (grub_ahci_open): Likewise.
13637
13638
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13639
13640
	* include/grub/zfs/dnode.h (DN_MIN_INDBLKSHIFT): Removed.
13641
13642
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13643
13644
	* util/grub-pe2elf.c (ehdr): Make static.
13645
	(shdr): Likewise.
13646
	(num_sections): Likewise.
13647
	(offset): Likewise.
13648
13649
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13650
13651
	Eliminate ofpath limits and possible overflows.
13652
13653
	* util/ieee1275/ofpath.c (grub_util_info) [STANDALONE]: New function.
13654
	(OF_PATH_MAX): Removed.
13655
	(MAX_DISK_CAT): New const.
13656
	(find_obppath): Use allocated rather than preallocated buffer.
13657
	Return result. Argument of_path removed. All users updated.
13658
	Add missing fdstat.
13659
	(xrealpath): New function.
13660
	(block_device_get_sysfs_path_and_link): Remove sysfs argument.
13661
	Allocate rather than use preallocated buffer. All users updated.
13662
	(__of_path_common): Use allocated rather than preallocatecd buffer.
13663
	Return result. Argument of_path removed. All users updated.
13664
	(vendor_is_ATA): Read only needed part form the file.
13665
	(check_sas): Allocate depending on contents rather than fixed.
13666
	(main) [STANDALONE]: Handle NULL result.
13667
13668
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13669
13670
	* grub-core/normal/completion.c (iterate_dev): Close the disk.
13671
13672
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13673
13674
	Cryptodisk write support.
13675
13676
	* grub-core/disk/cryptodisk.c (grub_crypto_pcbc_encrypt): New function.
13677
	(grub_cryptodisk_decrypt): Moved logic to ...
13678
	(grub_cryptodisk_endecrypt): ...this. New argument "encrypt".
13679
	(grub_cryptodisk_write): Implement.
13680
	* grub-core/kern/emu/hostdisk.c (nwrite): Rename to ...
13681
	(grub_util_fd_write): ... this. Make global.
13682
	* include/grub/emu/hostdisk.h (grub_util_fd_write): New proto.
13683
13684
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13685
13686
	* include/grub/list.h (grub_list_remove): Don't crash if element is
13687
	removed twice.
13688
13689
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13690
13691
	Rename ofconsole to console.
13692
13693
	* grub-core/commands/terminal.c (handle_command): Handle ofconsole
13694
	as sysnonym to console.
13695
	* grub-core/term/ieee1275/ofconsole.c: Renamed to ..
13696
	* grub-core/term/ieee1275/console.c: ... this. All users updated.
13697
	Rename grub_ofconsole_ to grub_console_. All users updated
13698
	(grub_console_term_output): Rename "ofconsole" to "console".
13699
	* grub-core/term/terminfo.c (grub_cmd_terminfo): Handle "ofconsole"
13700
	as "console".
13701
13702
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13703
13704
	* grub-core/loader/i386/pc/plan9.c (grub_cmd_plan9): Remove PXE
13705
	handling.
13706
	* include/grub/disk.h (grub_disk_dev_id): Remove obsolete
13707
	GRUB_DISK_DEVICE_UUID_ID, GRUB_DISK_DEVICE_PXE_ID and
13708
	GRUB_DISK_DEVICE_FILE_ID.
13709
13710
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13711
13712
	* grub-core/kern/partition.c (grub_partition_get_name): Simplify logic
13713
	and improve performance.
13714
13715
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13716
13717
	* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): Fix
13718
	missing ieee1275/ prefix on whole disk.
13719
13720
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13721
13722
	* include/grub/powerpc/ieee1275/util/biosdisk.h: Remove.
13723
	* include/grub/powerpc/ieee1275/biosdisk.h: Likewise.
13724
13725
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13726
13727
	* grub-core/fs/cpio.c (handle_symlink): Fix a bug.
13728
13729
2012-01-29  Vladimir Serbinenko  <phcoder@gmail.com>
13730
13731
	Merge common RAID and LVM logic to an abstract diskfilter.
13732
	Add LDM support using the same framework.
13733
13734
	* Makefile.util.def (libgrubkern): Add grub-core/disk/ldm.c,
13735
	grub-core/disk/diskfilter.c and grub-core/partmap/gpt.c.
13736
	(libgrubmods): Remove grub-core/disk/raid.c and
13737
	grub-core/partmap/gpt.c.
13738
	* grub-core/Makefile.core.def (ldm): New module.
13739
	(raid): Renamed to diskfilter. All users updated.
13740
	* grub-core/disk/raid.c: Moved to ...
13741
	* grub-core/disk/diskfilter.c: ... here.
13742
	* grub-core/disk/diskfilter.c: Rename grub_raid_ to grub_diskfilter_.
13743
	(lv_num): New var.
13744
	(find_array): Renamed to ...
13745
	(find_lv): ... this. Support multi-LV. Skip nameless LVs
13746
	(grub_is_array_readable): Renamed to ...
13747
	(grub_is_lv_readable): ... this. Support multinode hierarchy.
13748
	(insert_array): New argument id.
13749
	(is_node_readable): New function.
13750
	(scan_device): Rename to ...
13751
	(scan_disk): .. this. Restrict to one disk.
13752
	(scan_devices): New function.
13753
	(grub_diskfilter_iterate): Support multi-LV.
13754
	Skip invisible and nameless LVs.
13755
	(grub_diskfilter_memberlist): Support multi-LV.
13756
	(grub_diskfilter_read_node): New function.
13757
	(grub_raid_read): Most of logic moved to ...
13758
	(read_segment): ... here
13759
	(read_lv): New function.
13760
	(grub_diskfilter_get_vg_by_uuid): New function.
13761
	(grub_diskfilter_make_raid): Likewise.
13762
	* grub-core/disk/ldm.c: New file.
13763
	* grub-core/disk/lvm.c (vg_list): Removed.
13764
	(lv_count): Likewise.
13765
	(scan_depth): Likewise.
13766
	(is_lv_readable): Likewise.
13767
	(grub_lvm_getvalue): Advance pointer past the number.
13768
	(find_lv): Removed.
13769
	(do_lvm_scan): Refactored into ...
13770
	(grub_lvm_detect): ... this. Support raid.
13771
	(grub_lvm_iterate): Removed.
13772
	(grub_lvm_memberlist): Likewise.
13773
	(grub_lvm_open): Likewise.
13774
	(grub_lvm_close): Likewise.
13775
	(read_lv): Likewise.
13776
	(read_node): Likewise.
13777
	(is_node_readable): Likewise.
13778
	(is_lv_readable): Likewise.
13779
	(grub_lvm_read): Likewise.
13780
	(grub_lvm_write): Likewise.
13781
	(grub_lvm_dev): Use diskfilter
13782
	(GRUB_MOD_INIT): Likewise.
13783
	(GRUB_MOD_FINI): Likewise.
13784
	* grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Use
13785
	new interface.
13786
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Likewise.
13787
	* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
13788
	* grub-core/disk/raid5_recover.c (grub_raid5_recover): Use
13789
	grub_diskfilter_read_node.
13790
	Fix a bug with xor.
13791
	* grub-core/disk/raid6_recover.c (grub_raid6_recover): Use
13792
	grub_diskfilter_read_node.
13793
	Support GRUB_RAID_LAYOUT_MUL_FROM_POS.
13794
	* grub-core/kern/disk.c (grub_disk_dev_list): Make global.
13795
	(grub_disk_dev_iterate): Move from here...
13796
	* include/grub/disk.h (grub_disk_dev_iterate): ... to here. Inlined.
13797
	* grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start):
13798
	Make global.
13799
	(grub_hostdisk_find_partition_start): Likewise.
13800
	(grub_hostdisk_os_dev_to_grub_drive): New function.
13801
	(grub_util_biosdisk_get_osdev): Check that disk is biosdisk.
13802
	* grub-core/kern/emu/hostdisk.c (make_device_name): Move to ...
13803
	* util/getroot.c (make_device_name): ... here.
13804
	* grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
13805
	Move to ...
13806
	* util/getroot.c (grub_util_get_dm_node_linear_info): ...here.
13807
	* grub-core/kern/emu/hostdisk.c
13808
	(convert_system_partition_to_system_disk): Move to ...
13809
	* util/getroot.c (convert_system_partition_to_system_disk): ...here.
13810
	* grub-core/kern/emu/hostdisk.c (device_is_wholedisk): Move to ...
13811
	* util/getroot.c (device_is_wholedisk): ... here.
13812
	* grub-core/kern/emu/hostdisk.c (find_system_device): Move to ...
13813
	* util/getroot.c (find_system_device): ... here.
13814
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_present):
13815
	Move to ...
13816
	* util/getroot.c (grub_util_biosdisk_is_present): ...here.
13817
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev):
13818
	Move to ...
13819
	* util/getroot.c (grub_util_biosdisk_get_grub_dev): ... here.
13820
	Handle LDM.
13821
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy):
13822
	Move to ...
13823
	* util/getroot.c (grub_util_biosdisk_is_floppy): ... here.
13824
	* grub-core/partmap/gpt.c (grub_gpt_partition_map_iterate): Made global.
13825
	* include/grub/disk.h (grub_disk_dev_id): Replaced RAID and LVM with
13826
	DISKFILTER.
13827
	* include/grub/raid.h: Renamed to ...
13828
	* include/grub/diskfilter.h: ... this.
13829
	* include/grub/diskfilter.h: Rename grub_raid_* to grub_diskfilter_*
13830
	(GRUB_RAID_LAYOUT_*): Make into array.
13831
	(GRUB_RAID_LAYOUT_MUL_FROM_POS): New value.
13832
	(grub_diskfilter_vg): New struct.
13833
	(grub_diskfilter_pv_id): Likewise.
13834
	(grub_raid_member): Removed.
13835
	(grub_raid_array): Likewise.
13836
	(grub_diskfilter_pv): New struct.
13837
	(grub_diskfilter_lv): Likewise.
13838
	(grub_diskfilter_segment): Likewise.
13839
	(grub_diskfilter_node): Likewise.
13840
	(grub_diskfilter_get_vg_by_uuid): New proto.
13841
	(grub_raid_register): Inline.
13842
	(grub_diskfilter_unregister): Likewise.
13843
	(grub_diskfilter_make_raid): New proto.
13844
	(grub_diskfilter_vg_register): Likewise.
13845
	(grub_diskfilter_read_node): Likewise.
13846
	(grub_diskfilter_get_pv_from_disk) [GRUB_UTIL]: Likewise.
13847
	* include/grub/emu/hostdisk.h (grub_util_get_ldm): New proto.
13848
	(grub_util_is_ldm): Likewise.
13849
	(grub_util_ldm_embed) [GRUB_UTIL]: Likewise.
13850
	(grub_hostdisk_find_partition_start): Likewise.
13851
	(grub_hostdisk_os_dev_to_grub_drive): Likewise.
13852
	* include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_LDM):
13853
	New definition.
13854
	(grub_gpt_partition_map_iterate): New proto.
13855
	* include/grub/lvm.h (grub_lvm_vg): Removed.
13856
	(grub_lvm_pv): Likewise.
13857
	(grub_lvm_lv): Likewise.
13858
	(grub_lvm_segment): Likewise.
13859
	(grub_lvm_node): Likewise.
13860
	* util/getroot.c [...]
13861
	* util/grub-probe.c (probe_raid_level): Handle diskfilter.
13862
	(probe_abstraction): Likewise.
13863
	* util/grub-setup.c (setup): Remove must_embed. Support LDM.
13864
	(main): Remove dead logic.
13865
13866
2012-01-28  Vladimir Serbinenko  <phcoder@gmail.com>
13867
13868
	Simplify root device discover and don't fail when trying to open
13869
	incorrect devices.
13870
13871
	* grub-core/disk/efi/efidisk.c (get_diskname_from_path_real): New
13872
	function.
13873
	(get_diskname_from_path): Likewise.
13874
	(grub_efidisk_get_device_name): Use get_diskname_from_path instead
13875
	of iterating.
13876
13877
2012-01-27  Vladimir Serbinenko  <phcoder@gmail.com>
13878
13879
	* grub-core/Makefile.core.def (setpci): Enable on all PCI platforms.
13880
13881
2012-01-27  Vladimir Serbinenko  <phcoder@gmail.com>
13882
13883
	* grub-core/fs/zfs/zfs.c (nvlist_find_value): Check that we don't go
13884
	pastthe end.
13885
13886
2012-01-27  Vladimir Serbinenko  <phcoder@gmail.com>
13887
13888
	* util/grub-install.in: Add missing \.
13889
	Reported by: gentoofan
13890
13891
2012-01-26  Vladimir Serbinenko  <phcoder@gmail.com>
13892
13893
	* grub-core/fs/squash4.c (xz_decompress): Fix return value.
13894
	(direct_read): Use correct compressed size.
13895
	(grub_squash_read_data): Likewise.
13896
13897
2012-01-26  Vladimir Serbinenko  <phcoder@gmail.com>
13898
13899
	* docs/grub.texi (Platform limitations): New section.
13900
	(Platform-specific operations): Likewise.
13901
	* docs/grub-dev.texi (Porting): Likewise.
13902
13903
2012-01-25  Vladimir Serbinenko  <phcoder@gmail.com>
13904
13905
	IEEE1275 disk write support.
13906
13907
	* grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_write): Make buffer
13908
	const void *.
13909
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_write): Likewise.
13910
	* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_read): Move open
13911
	and seek loginc to ...
13912
	(grub_ofdisk_prepare): ... here.
13913
	(grub_ofdisk_write): Implement.
13914
13915
2012-01-25  Vladimir Serbinenko  <phcoder@gmail.com>
13916
13917
	ARC disk write support.
13918
13919
	* grub-core/disk/arc/arcdisk.c (handle_writable): New var.
13920
	(reopen): New argument writable. All users updated.
13921
	Handle required access mode.
13922
	(grub_arcdisk_write): Implement.
13923
	* include/grub/arc/arc.h (grub_arc_file_access): New enum.
13924
	(grub_arc_firmware_vector): Make buffer to write a const buffer.
13925
13926
2012-01-25  Vladimir Serbinenko  <phcoder@gmail.com>
13927
13928
	* grub-core/fs/btrfs.c (grub_btrfs_device): New field size.
13929
	(read_sblock): Don't attempt to read superblocks outside the disk size.
13930
13931
2012-01-25  Vladimir Serbinenko  <phcoder@gmail.com>
13932
13933
	* grub-core/fs/nilfs2.c (grub_nilfs2_load_sb): Use device size from
13934
	first superblock to find the second one when possible.
13935
13936
2012-01-25  Vladimir Serbinenko  <phcoder@gmail.com>
13937
13938
	* util/grub-install.in: Fix an ARC bug.
13939
	Print a warning if no platform-specific setup is available.
13940
13941
2012-01-24  Vladimir Serbinenko  <phcoder@gmail.com>
13942
13943
	Use static allocation rather than scratch pointer in reed_solomon.
13944
	It decreases its size significantly and avoids a variable in .text.
13945
13946
	* grub-core/lib/reed_solomon.c (scratch): Removed.
13947
	(chosenstat): New const or static array.
13948
	(sigma): Likewise.
13949
	(errpot): Likewise.
13950
	(errpos): Likewise.
13951
	(sy): Likewise.
13952
	(mstat): Likewise.
13953
	(errvals): Likewise.
13954
	(eqstat): Likewise.
13955
	(pol_evaluate): Replace x with log_x argument. All users updated.
13956
	(syndroms): Removed.
13957
	(gauss_solve): Use statically allocated arrays.
13958
	(rs_recover): Likewise.
13959
	Calculate syndroms directly.
13960
	(decode_block): Use statically allocated arrays.
13961
	(grub_reed_solomon_add_redundancy) [TEST]: Fix -DTEST compilation.
13962
	(main) [TEST]: Allow -DTEST -DSTANDALONE.
13963
13964
2012-01-24  Vladimir Serbinenko  <phcoder@gmail.com>
13965
13966
	Eliminate fixed limit on reed solomon decoder length.
13967
13968
	* grub-core/boot/i386/pc/lnxboot.S: Scan for multiboot signature
13969
	rather than hardcoding the address.
13970
	* grub-core/boot/i386/pc/startup_raw.S: Add new data field
13971
	no_reed_solomon_length.
13972
	Move gate_a20 to no-reed-solomon part.
13973
	Don't force a particular size of no reed-solomon part.
13974
	* include/grub/offsets.h (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART):
13975
	Removed.
13976
	(GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_LENGTH): New define.
13977
	* util/grub-setup.c (setup): Read no_rs_length from the image itself.
13978
13979
2012-01-24  Vladimir Serbinenko  <phcoder@gmail.com>
13980
13981
	* grub-core/commands/wildcard.c (match_files): Handle filenames
13982
	without explicit device.
13983
	(wildcard_expand): Don't add explicit device if not already present.
13984
	* tests/grub_script_echo1.in: Add a new expansion test.
13985
13986
2012-01-24  Vladimir Serbinenko  <phcoder@gmail.com>
13987
13988
	Replace single-linked with double-linked lists. It results in more
13989
	compact and more efficient code.
13990
13991
	* grub-core/kern/list.c (grub_list_push): Moved from here ...
13992
	* include/grub/list.h (grub_list_push): ... to here. Set prev.
13993
	(grub_list_remove): Moved from here ...
13994
	* include/grub/list.h (grub_list_remove): ... here. Use and set prev.
13995
	(grub_prio_list_insert): Set prev.
13996
	* include/grub/list.h (grub_list): Add prev. All users updated.
13997
13998
2012-01-24  Vladimir Serbinenko  <phcoder@gmail.com>
13999
14000
	Handle newer autotools. Add some missing quotes while on it.
14001
14002
	* Makefile.am (pkglib_DATA): Remove update-grub_lib.
14003
	(pkglib_DATA): Move grub-mkconfig_lib from here ...
14004
	(pkgdata_DATA): ... here.
14005
	* Makefile.util.def (update-grub_lib): Removed.
14006
	* conf/Makefile.common (pkglib_DATA): Removed.
14007
	(pkglib_SCRIPTS): Likewise.
14008
	(pkgdata_DATA): New variable.
14009
	* tests/util/grub-shell-tester.in: Replace pkglib with pkgdata where
14010
	needed.
14011
	Add missing quotes.
14012
	Remove unused variable while on it.
14013
	* tests/util/grub-shell.in: Likewise.
14014
	* util/grub-install.in: Likewise.
14015
	* util/grub-mkconfig.in: Likewise.
14016
	* util/grub-mknetdir.in: Likewise.
14017
	* util/grub-mkrescue.in: Likewise.
14018
	* util/grub-mkstandalone.in: Likewise.
14019
	* util/grub.d/00_header.in: Likewise.
14020
	* util/grub.d/10_hurd.in: Likewise.
14021
	* util/grub.d/10_illumos.in: Likewise.
14022
	* util/grub.d/10_kfreebsd.in: Likewise.
14023
	* util/grub.d/10_linux.in: Likewise.
14024
	* util/grub.d/10_netbsd.in: Likewise.
14025
	* util/grub.d/10_windows.in: Likewise.
14026
	* util/grub.d/20_linux_xen.in: Likewise.
14027
	* util/grub.d/30_os-prober.in: Likewise.
14028
	* util/update-grub_lib.in: Removed.
14029
14030
2012-01-24  Seth Goldberg <seth.goldberg@oracle.com>
14031
14032
	* grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Relax checks as
14033
	a workaround for intel problem.
14034
14035
2012-01-23  Paulo de Rezende Pinatti <ppinatti@linux.vnet.ibm.com>
14036
2012-01-23  Vladimir Serbinenko  <phcoder@gmail.com>
14037
2012-01-23  pfsmorigo
14038
14039
	* util/grub-install.in: Support dd'in into PreP partition.
14040
	* util/grub-probe.c (probe): Support discovering partition type.
14041
	(main): Support -t msdos_parttype.
14042
14043
2012-01-23  Vladimir Serbinenko  <phcoder@gmail.com>
14044
14045
	* grub-core/normal/crypto.c (grub_crypto_autoload): Prevent
14046
	infinite recursion using counter.
14047
	* grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_init): Defer s->crc32
14048
	init to skip it if the magic check fails.
14049
	(dec_stream_header): Init s->crc32.
14050
14051
2012-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
14052
2012-01-22  Zachary Bedell <pendorbound@gmail.com>
14053
2012-01-22  Richard Laager <rlaager@wiktel.com>
14054
14055
	* grub-core/fs/zfs/zfs.c (uberblock_verify): New parameter size.
14056
	All users updated.
14057
	(find_bestub): Determine correct size.
14058
	(fill_vdev_info_real): Fill ashift. New argument. All users updated.
14059
	(scan_disk): Align the size down.
14060
	Call check pool before find_bestub to have ashift.
14061
14062
2012-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
14063
14064
	* grub-core/lib/relocator.c (malloc_in_range): Remove couple of
14065
	dprintf in no-malloc zone.
14066
14067
2012-01-22  Mario Limonciello <mario_limonciello@dell.com>
14068
14069
	* configure.ac: Add back in test for limits.h.
14070
14071
2012-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
14072
14073
	Support 4K-sector NTFS.
14074
14075
	* include/grub/ntfs.h (GRUB_NTFS_MAX_MFT): Increase to 8.
14076
	(grub_ntfs_data): Remove blocksize.
14077
	* grub-core/fs/ntfs.c (fixup): Fix size comparison.
14078
	Remove data argument. All users updated.
14079
14080
2012-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
14081
14082
	* grub-core/kern/mips/arc/init.c (grub_total_modules_size): Mark as
14083
	being in .text to avoid dprel references.
14084
	* include/grub/mips/loongson/kernel.h (grub_arch_machine): Likewise.
14085
	* include/grub/mips/loongson/memory.h (grub_arch_memsize): Likewise.
14086
	(grub_arch_highmemsize): Likewise.
14087
	* include/grub/mips/loongson/time.h (grub_arch_busclock): Likewise.
14088
	* include/grub/mips/qemu_mips/memory.h (grub_arch_memsize): Likewise.
14089
	* include/grub/mips/time.h (grub_arch_cpuclock): Likewise.
14090
14091
2012-01-18  Vladimir Serbinenko  <phcoder@gmail.com>
14092
14093
	Support powerpc with GCC that defines __PPC__ but not __powerpc__.
14094
14095
	* config.h.in (__powerpc__) [__PPC__ && !__powerpc__]: New definition.
14096
	* grub-core/lib/setjmp.S: Treat __PPC__ as equivalent to __powerpc__.
14097
14098
2012-01-18  Vladimir Serbinenko  <phcoder@gmail.com>
14099
14100
	* include/grub/datetime.h (grub_get_datetime_cmos): Don't define in
14101
	GRUB_UTIL.
14102
	(grub_set_datetime_cmos): Likewise.
14103
14104
2012-01-18  Vladimir Serbinenko  <phcoder@gmail.com>
14105
14106
	Make XZ compression parameters dependent on target and not host CPU.
14107
14108
	* configure.ac: Define GRUB_TARGET_CPU_XYZ series.
14109
	* grub-core/lib/xzembed/xz_config.h: Use GRUB_TARGET_CPU_XYZ.
14110
14111
2012-01-18  Vladimir Serbinenko  <phcoder@gmail.com>
14112
14113
	* grub-core/kern/powerpc/dl.c (grub_arch_dl_get_tramp_got_size): Remove
14114
	set but not used variable.
14115
14116
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14117
14118
	* grub-core/fs/reiserfs.c (grub_reiserfs_uuid): Reject 0-uuid as
14119
	created when no uuid support is compiled into mkfs.reiser.
14120
14121
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14122
14123
	* grub-core/fs/hfs.c (macroman_to_utf8): Convert / to :.
14124
	(utf8_to_macroman): Do the opposite.
14125
	* grub-core/fs/hfsplus.c (grub_hfsplus_iterate_dir): Convert / to :.
14126
14127
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14128
14129
	* configure.ac: Refise build qemu_mips w/o unifont.
14130
14131
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14132
14133
	Eliminate grub_min/grub_max prone to overflow usage.
14134
14135
	* grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Eliminate grub_min.
14136
	(poll_nonroot_hub): Likewise.
14137
	* grub-core/fs/affs.c (grub_affs_iterate_dir): Likewise.
14138
	(grub_affs_label): Likewise.
14139
	* grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Likewise.
14140
	* grub-core/fs/hfs.c (grub_hfs_dir): Likewise.
14141
	(grub_hfs_label): Likewise.
14142
	* grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey): Likewise.
14143
	* grub-core/fs/zfs/zfs.c (MIN): Remove.
14144
	(zap_leaf_array_equal): Use grub_size. Remove MIN.
14145
	(zap_leaf_array_get): Likewise.
14146
	(dnode_get_path): Likewise.
14147
	* grub-core/io/lzopio.c (grub_lzopio_read): Eliminate grub_min.
14148
	* grub-core/io/xzio.c (grub_xzio_read): Likewise.
14149
	* grub-core/script/execute.c (grub_script_break): Likewise.
14150
	* grub-core/script/lexer.c (grub_script_lexer_record): Eliminate
14151
	grub_max.
14152
	* grub-core/script/yylex.l (grub_lexer_yyrealloc): Likewise.
14153
	* include/grub/misc.h (grub_min): Removed.
14154
	(grub_max): Likewise.
14155
14156
2012-01-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14157
14158
	* grub-core/fs/ext2.c (grub_ext2_iterate_dir): Ignore entries with
14159
	direct.inode = 0.
14160
14161
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14162
14163
	* grub-core/lib/posix_wrap/wctype.h (CHARCLASS_NAME_MAX): New define.
14164
14165
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14166
14167
	* include/grub/datetime.h (grub_datetime2unixtime): Fix offset.
14168
14169
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14170
14171
	* grub-core/lib/posix_wrap/stdlib.h (MB_CUR_MAX): Moved from here ...
14172
	* grub-core/lib/posix_wrap/wchar.h (MB_CUR_MAX): ... here. Value fixed.
14173
14174
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14175
14176
	* grub-core/fs/fshelp.c (grub_fshelp_find_file): Use grub_strcasecmp
14177
	rather than a hack for grub_strncasemap.
14178
14179
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14180
14181
	Support multiple initrds
14182
	Note: part of this was accidently committed in r3739.
14183
14184
	* grub-core/loader/i386/linux.c (grub_cmd_initrd): Support multiple
14185
	initrd.
14186
	* grub-core/loader/i386/pc/linux.c (grub_cmd_initrd): Likewise.
14187
	* grub-core/loader/ia64/efi/linux.c (grub_cmd_initrd): Likewise.
14188
	* grub-core/loader/mips/linux.c (grub_cmd_initrd): Likewise.
14189
	* grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_initrd): Likewise.
14190
	* grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_initrd): Likewise.
14191
14192
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14193
14194
	* grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Skip
14195
	disks with unknown size.
14196
	* grub-core/disk/raid.c (scan_devices): Allow disks with unknown sizes.
14197
14198
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14199
14200
	Remove defines pertaining to arbitrary limits not affecting GRUB
14201
	anymore.
14202
14203
	* grub-core/fs/ext2.c (EXT2_PATH_MAX): Removed.
14204
	(EXT2_MAX_SYMLINKCNT): Likewise.
14205
	* grub-core/fs/nilfs2.c (NILFS_BTREE_LEVEL_MAX): Likewise.
14206
	* grub-core/net/tftp.c (TFTP_MAX_PACKET): Likewise.
14207
	* include/grub/i386/pc/pxe.h (GRUB_PXE_MIN_BLKSIZE): Likewise.
14208
	(GRUB_PXE_MAX_BLKSIZE): Likewise.
14209
	* include/grub/normal.h (GRUB_MAX_CMDLINE): Likewise.
14210
	* include/grub/zfs/dnode.h (DN_MAX_INDBLKSHIFT): Likewise.
14211
	(DN_MAX_OBJECT_SHIFT): Likewise.
14212
	(DN_MAX_OFFSET_SHIFT): Likewise.
14213
	(DN_MAX_OBJECT): Likewise.
14214
	(DNODES_PER_LEVEL_SHIFT): Likewise.
14215
	* include/grub/zfs/spa.h (SPA_MAXBLOCKSHIFT): Likewise.
14216
	(SPA_MAXBLOCKSIZE): Likewise.
14217
	(SPA_BLOCKSIZES): Likewise.
14218
	* include/grub/zfs/zap_impl.h (MZAP_MAX_BLKSHIFT): Likewise.
14219
	(MZAP_MAX_BLKSZ): Likewise.
14220
14221
2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
14222
14223
	* grub-core/fs/zfs/zfs.c (grub_zfs_read): Remove useless alloc and
14224
	handle NULL appropriately.
14225
	Remove MIN.
14226
14227
2012-01-13  Vladimir Serbinenko  <phcoder@gmail.com>
14228
14229
	Fix efiemu.
14230
14231
	* grub-core/efiemu/runtime/efiemu.c: explicitly include right
14232
	cpu/types.h.
14233
	(efiemu_set_virtual_address_map): Remove UINT_TO_PTR.
14234
	* configure.ac: Fix efiemu check.
14235
14236
2012-01-13  Vladimir Serbinenko  <phcoder@gmail.com>
14237
14238
	* util/grub.d/30_os-prober.in: Fix occurence of grub-probe instead of
14239
	grub_probe.
14240
	Reported by: adamwill
14241
14242
2012-01-12  Seth Goldberg <seth.goldberg@oracle.com>
14243
14244
	* grub-core/lib/arg.c (grub_arg_parse): Fix NULL pointer dereference.
14245
14246
2012-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
14247
14248
	Fix handling of wide characters in gfxterm.
14249
14250
	* grub-core/term/gfxterm.c (grub_colored_char): Remove width and index.
14251
	(clear_char): Likewise.
14252
	(paint_char): Skip code == NULL chars.
14253
	(grub_gfxterm_putchar): Set code = NULL on "shadowed" positions.
14254
14255
2012-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
14256
14257
	* grub-core/normal/charset.c: Move comment to right place.
14258
14259
2012-01-11  Vladimir Serbinenko  <phcoder@gmail.com>
14260
14261
	* grub-core/fs/affs.c (grub_affs_bblock): Revert flags.
14262
	(GRUB_AFFS_FLAG_FFS): Put back where it was.
14263
	(grub_affs_mount): Revert the correct version checking.
14264
14265
2012-01-11  Vladimir Serbinenko  <phcoder@gmail.com>
14266
14267
	* docs/grub.texi (Unicode): Mention several other unsupported features.
14268
14269
2011-12-26  Vladimir Serbinenko  <phcoder@gmail.com>
14270
14271
	* grub-core/fs/squash4.c (squash_mount): Mark endian conversion in
14272
	case statements as compile-time one.
14273
	(direct_read): Prevent spurious warnings.
14274
	(grub_squash_read_data): Likewise.
14275
14276
2011-12-26  Vladimir Serbinenko  <phcoder@gmail.com>
14277
14278
	Various squash4 fixes and LZO and XZ support.
14279
14280
	* Makefile.util.def (libgrubmods.a): Add xzembed directory to cppflags.
14281
	Add xzembed source files.
14282
	* grub-core/Makefile.core.def (squash4): Add xzembed and minilzo flags.
14283
	* grub-core/fs/squash4.c (grub_squash_super): New field compression.
14284
	(grub_squash_inode): New subtype long_dir.
14285
	(SQUASH_TYPE_LONG_DIR): New inode type.
14286
	(COMPRESSION): New enum.
14287
	(XZBUFSIZ): New const.
14288
	(grub_squash_data): New fields blksz, decompress, xzdec, xzbuf.
14289
	(read_chunk): Use data->decompress.
14290
	(zlib_decompress): New function.
14291
	(lzo_decompress): Likewise.
14292
	(xz_decompress): Likewise.
14293
	(squash_mount): Set new data fields.
14294
	(grub_squash_iterate_dir): Handle long dir.
14295
	(squash_unmount): Free xzdec and xzbuf.
14296
	(grub_squash_open): Check ino type.
14297
	(direct_read): Stylistic fixes. Use data->decompress.
14298
	(grub_squash_read_data): Likewise.
14299
	* grub-core/io/gzio.c (grub_gzio): Remove disk_input.
14300
	(get_byte): Likewise.
14301
	(grub_zlib_disk_read): Removed.
14302
	* grub-core/lib/posix_wrap/sys/types.h (ssize_t): New type.
14303
	(GRUB_POSIX_BOOL_DEFINED): New define.
14304
	* grub-core/lib/posix_wrap/unistd.h: Include sys/types.h.
14305
	* grub-core/lib/xzembed/xz.h: Addmissing includes.
14306
	[!GRUB_POSIX_BOOL_DEFINED]: Define bool.
14307
	* include/grub/deflate.h (grub_zlib_disk_read): Removed.
14308
14309
2011-12-26  Vladimir Serbinenko  <phcoder@gmail.com>
14310
14311
	Don't override more informative errors.
14312
14313
	* grub-core/commands/acpi.c (grub_cmd_acpi): Don't override errors.
14314
	* grub-core/font/font.c (open_section): Likewise.
14315
	* grub-core/loader/i386/bsd.c (grub_bsd_load_aout): New argument
14316
	filename. Don't override errors.
14317
	(grub_cmd_openbsd_ramdisk): Don't override errors.
14318
	* grub-core/loader/i386/linux.c (grub_cmd_linux): Likewise.
14319
	(grub_cmd_initrd): Likewise.
14320
	* grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
14321
	(grub_cmd_initrd): Likewise.
14322
	* grub-core/loader/ia64/efi/linux.c (grub_load_elf64): Likewise.
14323
	(grub_cmd_linux): Likewise.
14324
	(grub_cmd_initrd): Likewise.
14325
	(grub_cmd_payload): Likewise.
14326
	* grub-core/loader/mips/linux.c (grub_cmd_initrd): Likewise.
14327
	* grub-core/loader/multiboot.c (grub_cmd_multiboot): Likewise.
14328
	(grub_cmd_module): Likewise.
14329
	* grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_initrd): Likewise.
14330
	* grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_initrd): Likewise.
14331
	* grub-core/loader/xnu.c (grub_xnu_load_driver): Likewise.
14332
	(grub_cmd_xnu_mkext): Likewise.
14333
	(grub_cmd_xnu_ramdisk): Likewise.
14334
	(grub_xnu_check_os_bundle_required): Likewise.
14335
	(grub_xnu_load_kext_from_dir): Likewise.
14336
	(grub_cmd_xnu_kextdir): Likewise.
14337
	* grub-core/loader/xnu_resume.c (grub_xnu_resume): Likewise.
14338
14339
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14340
14341
	* grub-core/fs/minix.c (grub_minix_mount) [MODE_MINIX3]: Treat 0xffff
14342
	as 1024 in block size field. Found on one of my test images.
14343
	Small optimisation while on it.
14344
14345
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14346
14347
	* docs/grub.texi (Filesystems): Mention SFS as Latin1 filesystem.
14348
	* grub-core/fs/sfs.c (grub_sfs_mount): Fix a memory leak while on it.
14349
	(grub_sfs_iterate_dir): Convert Latin1 to UTF8. Stylistic and
14350
	performance fixes while on it.
14351
	(grub_sfs_close): Fix memory leak while on it.
14352
	(grub_sfs_label): Convert Latin1 to UTF-8.
14353
14354
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14355
14356
	* grub-core/fs/hfs.c (grub_hfs_dir): Cap keylen to actually available
14357
	space to avoid overflows.
14358
	(grub_hfs_label): Convert from macroman to UTF-8.
14359
14360
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14361
14362
	* grub-core/fs/affs.c (grub_affs_label): Interpret label as latin1.
14363
14364
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14365
14366
	* grub-core/normal/menu.c (menu_init): Don't stop menu init at gfxterm.
14367
14368
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14369
14370
	* unicode: Import Unicode 6.0 data.
14371
14372
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14373
14374
	* grub-core/term/gfxterm.c (grub_gfxterm_putchar): Don't set values
14375
	outside of range.
14376
14377
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14378
14379
	Avoid cutting in the middle of UTF-8 character.
14380
14381
	* include/grub/charset.h (grub_getend): New function.
14382
	* grub-core/script/function.c (grub_script_function_find): Use
14383
	grub_getend.
14384
	* grub-core/normal/completion.c (add_completion): Likewise.
14385
14386
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14387
14388
	* grub-core/normal/charset.c (grub_ucs4_to_utf8): Small stylistic fix.
14389
	(grub_bidi_line_logical_to_visual): Skip tags. They are deprecated.
14390
	* include/grub/unicode.h (GRUB_UNICODE_TAG_START): New enum value.
14391
	(GRUB_UNICODE_TAG_END): Likewise.
14392
	(GRUB_UNICODE_LAST_VALID): Likewise.
14393
14394
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14395
14396
	* include/grub/unicode.h (grub_unicode_compact_range): Replace end with
14397
	len and make it smaller. All users updated.
14398
	* util/import_unicode.py: Put length and not end character.
14399
	Check length.
14400
14401
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14402
14403
	Make better Unicode-compliant and unify some UTF-8 code pathes.
14404
14405
	* grub-core/normal/charset.c (grub_utf8_to_utf16): Don't eat possibly
14406
	valid character.
14407
	(grub_is_valid_utf8): Use grub_utf8_process.
14408
	Check resulting code range.
14409
	(grub_utf8_to_ucs4): Use grub_utf8_process.
14410
	* include/grub/charset.h (grub_utf16_to_utf8): Don't eat up a possibly
14411
	valid character.
14412
14413
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14414
14415
	* grub-core/io/bufio.c (grub_bufio_read): Fix handling of corner cases.
14416
14417
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14418
14419
	* docs/grub.texi (Filesystems): Mention AFS.
14420
14421
2011-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
14422
14423
	* docs/grub.texi (Filesystems): Clarify restrictions.
14424
	(Regexp): Mention non-Unicode regexp behaviour.
14425
	(Other): Mention non-Unicode matching behaviour.
14426
14427
2011-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
14428
14429
	Make HFS implementation use MacRoman.
14430
14431
	* grub-core/fs/hfs.c (MAX_UTF8_PER_MAC_ROMAN): New define.
14432
	(macroman): New const array.
14433
	(macroman_to_utf8): New function.
14434
	(utf8_to_macroman): Likewise.
14435
	(grub_hfs_find_dir): Use utf8_to_macroman.
14436
	(grub_hfs_dir): Use macroman_to_utf8.
14437
	Set case_insensitive.
14438
14439
2011-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
14440
14441
	* docs/grub.texi (Filesystems): Add IEEE1275 full-path example.
14442
14443
2011-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
14444
14445
	Integrate hints into autogeneration scripts.
14446
14447
	* docs/grub.texi (Filesystems): Add a hostdisk example.
14448
	* Makefile.util.def (grub-mkdevicemap): Remove ofpath.
14449
	(grub-probe): Add ofpath.
14450
	* gentpl.py: Remove group nosparc64.
14451
	* grub-core/commands/search.c (cache_entry): New struct.
14452
	(cache): New var.
14453
	(FUNC_NAME): Use and save cache. Fix handling of trailing comma.
14454
	* grub-core/commands/search_wrap.c (options): Add platform-specific
14455
	hint options.
14456
	(grub_cmd_search): Handle platform-specific hints.
14457
	(GRUB_MOD_INIT): Declare grub_cmd_search as accept_dash.
14458
	* grub-core/kern/emu/hostdisk.c (map): New field device_map.
14459
	(grub_util_biosdisk_data): Likewise.
14460
	(grub_util_biosdisk_open): Set device_map.
14461
	(read_device_map): Handle "" as indication of no map.
14462
	Set device_map.
14463
	(find_system_device): Add hostdisk/ prefix for autogenerated entries.
14464
	(grub_util_biosdisk_get_compatibility_hint): New function.
14465
	* grub-core/normal/main.c (features): Add feature_platform_search_hint.
14466
	* include/grub/emu/hostdisk.h
14467
	(grub_util_biosdisk_get_compatibility_hint): New proto.
14468
	* util/grub-install.in: Don't call grub-mkdevicemap.
14469
	Add platform-specific hint to load.cfg.
14470
	* util/grub-mkconfig.in: Don't call grub-mkdevicemap.
14471
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Add
14472
	hints. Set root preliminary to compatibility hint, not to OS name.
14473
	* util/grub-probe.c (PRINT_*): Add hints.
14474
	(print): Make static.
14475
	(escape_of_path): New function.
14476
	(guess_bios_drive): Likewise.
14477
	(guess_efi_drive): Likewise.
14478
	(guess_baremetal_drive): Likewise.
14479
	(print_full_name): Likewise.
14480
	(probe): Handle hints.
14481
	(main): Likewise.
14482
	* util/ieee1275/devicemap.c: Removed.
14483
	* util/ieee1275/ofpath.c (find_obppath): Allow to fail. All users
14484
	updated.
14485
	(grub_util_devname_to_ofpath): Return NULL on failure.
14486
14487
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Fix
14488
	resource leak.
14489
	* util/getroot.c (grub_util_pull_device): Fix memory leak.
14490
14491
	* po/POTFILES.in: Regenerated.
14492
14493
	Allow purely long options
14494
14495
	* grub-core/lib/arg.c (SHORT_ARG_HELP): Removed.
14496
	(SHORT_ARG_USAGE): Likewise.
14497
	(grub_arg_show_help): Compare opt with help_options.
14498
	(parse_option): Receive opt as argument. If makes big simplificatons.
14499
	All users updated
14500
14501
2011-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
14502
14503
	* grub-core/lib/libgcrypt_wrap/cipher_wrap.h (WORDS_BIGENDIAN):
14504
	Restructure to avoid warning.
14505
14506
2011-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
14507
14508
	* util/grub-install.in: Account for possible escaped comma in device
14509
	name.
14510
14511
2011-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
14512
14513
	* util/ieee1275/ofpath.c (of_path_of_ide): Fix address for secondary
14514
	channel.
14515
14516
2011-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
14517
14518
	* grub-core/kern/ieee1275/openfw.c (grub_devalias_iterate): Fix
14519
	allocation and zero-setting.
14520
	(grub_ieee1275_get_devname): Check that alias is complete.
14521
14522
2011-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
14523
14524
	* grub-core/kern/disk.c (grub_disk_read): Fix hook calling for
14525
	unaligned segments.
14526
14527
2011-12-24  Vladimir Serbinenko  <phcoder@gmail.com>
14528
14529
	* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Add ieee1275/
14530
	prefix.
14531
	(grub_ofdisk_open): Check and discard ieee1275 prefix.
14532
	* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
14533
	Add ieee1275 prefix.
14534
14535
2011-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
14536
14537
	* docs/grub.texi (Filesystems): Update.
14538
14539
2011-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
14540
14541
	Support odc, newc and bigendian cpio formats.
14542
14543
	* Makefile.util.def (libgrubmods): Add odc.c, newc.c and cpio_be.c.
14544
	* grub-core/Makefile.core.def (newc): New module.
14545
	(odc): Likewise.
14546
	(cpio_be): Likewise.
14547
	* grub-core/fs/cpio.c (ALIGN_CPIO): New macro.
14548
	(MAGIC): Likewise.
14549
	(MAGIC2): Likewise.
14550
	(head) [MODE_ODC]: Adapt for the format.
14551
	(head) [MODE_NEWC]: Likewise.
14552
	(head) [!MODE_*]: Write fields of interest as arrays.
14553
	(MAGIC_USTAR): Removed.
14554
	(read_number) [MODE_NEWC]: Change to hex.
14555
	(read_number) [!MODE_*]: Parse binary arrays.
14556
	(grub_cpio_find_file): Factor out the code for better structure and
14557
	always use read_number.
14558
	(grub_cpio_mount): Use MAGIC and MAGIC2.
14559
	(grub_cpio_dir): Exit on first hook non-0 return.
14560
	(grub_cpio_fs) [MODE_ODC]: Set name to odc.
14561
	(grub_cpio_fs) [MODE_NEWC]: Set name to newc.
14562
	(GRUB_MOD_INIT) [MODE_ODC]: Set name to odc.
14563
	(GRUB_MOD_INIT) [MODE_NEWC]: Set name to newc.
14564
	(GRUB_MOD_FINI) [MODE_ODC]: Set name to odc.
14565
	(GRUB_MOD_FINI) [MODE_NEWC]: Set name to newc.
14566
	* grub-core/fs/newc.c: New file.
14567
	* grub-core/fs/odc.c: Likewise.
14568
	* grub-core/fs/cpio_be.c: Likewise.
14569
14570
2011-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
14571
14572
	Fix handling of tar numbers occupying the whole field.
14573
14574
	* grub-core/fs/cpio.c (read_number): New function.
14575
	(grub_cpio_find_file): Use read_number instead of strtoull.
14576
14577
2011-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
14578
14579
	* grub-core/fs/cpio.c (grub_cpio_find_file): Fix handling of names
14580
	occupying the whole field size.
14581
14582
2011-12-23  Lukas Anzinger <l.anzinger@gmail.com>
14583
14584
	* util/grub-mkconfig_lib.in (version_test_gt): Fix variable names.
14585
14586
2011-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
14587
14588
	* grub-core/net/net.c (grub_cmd_delroute): Add missing out condition.
14589
14590
2011-12-23  Seth Goldberg <seth.goldberg@oracle.com>
14591
14592
	* grub-core/Makefile.core.def (lzma_decompress): Add missing
14593
	TARGET_IMG_LDFLAGS.
14594
14595
2011-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
14596
14597
	* util/getroot.c (ESCAPED_PATH_MAX): New define.
14598
	(mountinfo_entry): Increase the field size to take escaping into
14599
	account.
14600
	(find_root_device_from_libzfs): Add one byte to size of strings for
14601
	security.
14602
14603
2011-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
14604
14605
	* grub-core/lib/reed_solomon.c (grub_reed_solomon_add_redundancy): Add
14606
	an assert.
14607
	* util/grub-setup.c (setup): Likewise.
14608
14609
2011-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
14610
14611
	* grub-core/boot/i386/pc/startup_raw.S: Add missing argument for
14612
	_LzmaDecodeA.
14613
14614
2011-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
14615
14616
	* docs/grub.texi (Internationalisation): New section.
14617
14618
2011-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
14619
14620
	* docs/grub.texi (Loopback booting): New section.
14621
14622
2011-12-22  Keshav P R  <the.ridikulus.rat@gmail.com>
14623
14624
	* util/grub-mkstandalone.in: Fix minor typo errors.
14625
14626
2011-12-20  Vladimir Serbinenko  <phcoder@gmail.com>
14627
14628
	IPv6, TCP, HTTP, ICMP and DNS support. Several cleanups and bugfixes.
14629
14630
	* grub-core/Makefile.core.def (net): Add net/dns.c, net/tcp.c,
14631
	net/icmp.c and net/icmp6.c.
14632
	(http): New module.
14633
	(priority_queue): Likewise.
14634
	* grub-core/io/bufio.c: Rewritten.
14635
	* grub-core/lib/legacy_parse.c (legacy_command): New argument type
14636
	TYPE_WITH_CONFIGFILE_OPTION.
14637
	(legacy_commands): Add bootp and dhcp.
14638
	(is_option): Handle TYPE_WITH_CONFIGFILE_OPTION.
14639
	(grub_legacy_parse): Likewise.
14640
	* grub-core/lib/priority_queue.c: New file.
14641
	* grub-core/net/arp.c: Add missing license header.
14642
	(arp_find_entry): Removed.
14643
	(arp_find_entry): Likewise.
14644
	(grub_net_arp_resolve): Rename to ...
14645
	(grub_net_arp_send_request): ...this.
14646
	(grub_net_arp_receive): New card argument.
14647
	* grub-core/net/bootp.c (parse_dhcp_vendor): Clean up.
14648
	Set router and DNS server.
14649
	(grub_net_configure_by_dhcp_ack): Handle routing information.
14650
	(grub_cmd_bootp): Set checksum.
14651
	(grub_bootp_init): Remove net_dhcp.
14652
	* grub-core/net/dns.c: New file.
14653
	* grub-core/net/drivers/efi/efinet.c (send_card_buffer): Wait for
14654
	completion.
14655
	(get_card_packet): Handle allocation.
14656
	(grub_efinet_findcards): Set mtu.
14657
	* grub-core/net/drivers/emu/emunet.c: Add missing license header.
14658
	(get_card_packet): Handle allocation.
14659
	(emucard): Set mtu.
14660
	* grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Handle allocation
14661
	(GRUB_MOD_INIT): Set mtu.
14662
	* grub-core/net/drivers/ieee1275/ofnet.c (grub_ofnetcard_data): Remove
14663
	mtu.
14664
	(get_card_packet): Handle allocation.
14665
	(grub_ofnet_findcards): Set mtu.
14666
	* grub-core/net/ethernet.c (send_ethernet_packet): Add compile time
14667
	assert.
14668
	(grub_net_recv_ethernet_packet): Handle IPv6.
14669
	* grub-core/net/http.c: New file.
14670
	* grub-core/net/icmp.c: Likewise.
14671
	* grub-core/net/icmp6.c: Likewise.
14672
	* grub-core/net/ip.c (ip6addr): New type.
14673
	(ip6hdr): Likewise.
14674
	(reassemble): Likewise.
14675
	(cmp): New function.
14676
	(reassembles): New variable.
14677
	(grub_net_ip_chksum): Handle 0xffff sum and unaligned buffers.
14678
	(id): New variable.
14679
	(send_fragmented): New function.
14680
	(grub_net_send_ip_packet): Rename to ...
14681
	(grub_net_send_ip4_packet): ... this. Send fragmented if needed.
14682
	Handle non-UDP.
14683
	(grub_net_recv_ip_packets): Rename to ...
14684
	(handle_dgram): ... this. Check checksum. Handle non-UDP.
14685
	(free_rsm): New function.
14686
	(free_old_fragments): Likewise.
14687
	(grub_net_recv_ip4_packets): New function.
14688
	(grub_net_send_ip6_packet): Likewise.
14689
	(grub_net_send_ip_packet): Likewise.
14690
	(grub_net_recv_ip6_packets): Likewise.
14691
	(grub_net_recv_ip_packets): Likewise.
14692
	* grub-core/net/net.c (grub_net_link_layer_entry): New struct.
14693
	(LINK_LAYER_CACHE_SIZE): New const.
14694
	(link_layer_find_entry): New function.
14695
	(grub_net_link_layer_add_address): Likewise.
14696
	(grub_net_link_layer_resolve_check): Likewise.
14697
	(grub_net_link_layer_resolve): Likewise.
14698
	(grub_net_ipv6_get_slaac): Likewise.
14699
	(grub_net_ipv6_get_link_local): Likewise.
14700
	(grub_cmd_ipv6_autoconf): Likewise.
14701
	(parse_ip): Handle one number representation.
14702
	(parse_ip6): New functoion.
14703
	(match_net): Handle IPv6.
14704
	(grub_net_resolve_address): Handle IPv6 and DNS.
14705
	(grub_net_resolve_net_address): Handle IPv6.
14706
	(route_cmp): New function.
14707
	(grub_net_route_address): Find best route.
14708
	(grub_net_addr_to_str): Handle IPv6.
14709
	(grub_net_addr_cmp): New function.
14710
	(grub_net_add_addr): Register local route.
14711
	(print_net_address): Handle net address.
14712
	(grub_net_poll_cards): Retransmit TCP.
14713
	(grub_net_poll_cards_idle_real): Likewise.
14714
	(have_ahead): New function.
14715
	(grub_net_seek_real): Use underlying seek.
14716
	(GRUB_MOD_INIT): Register net_ipv6_autoconf and init dns.
14717
	* grub-core/net/tcp.c: New file.
14718
	* grub-core/net/tftp.c (tftp_data): Add priority_queue.
14719
	(cmp): New function.
14720
	(ack): Likewise.
14721
	(tftp_receive): Handle unordered input.
14722
	(destroy_pq): New function.
14723
	(tftp_close): Close pq.
14724
	* grub-core/net/udp.c: Put missing license header.
14725
	(grub_net_udp_socket): New function.
14726
	(udp_socket_register): Likewise.
14727
	(grub_net_udp_close): Likewise.
14728
	(grub_net_recv_udp_packet): Check checksum.
14729
	* include/grub/efi/api.h (grub_efi_simple_network): Add status.
14730
	* include/grub/misc.h (grub_memchr): New function.
14731
	* include/grub/net.h (GRUB_NET_*_SIZE): New enum.
14732
	(grub_net_card_driver): Return buf in recv.
14733
	(grub_net_slaac_mac_list): New struct.
14734
	(grub_network_level_protocol_id): Add ipv6.
14735
	(grub_net_network_level_addr): Likewise.
14736
	(grub_net_network_level_net_addr): Likewise.
14737
	(grub_net_app_protocol): Add seek.
14738
	(grub_net_socket): Removed.
14739
	(grub_net_sockets): Likewise.
14740
	(grub_net_socket_register): Likewise.
14741
	(grub_net_socket_unregister): Likewise.
14742
	(FOR_NET_SOCKETS): Likewise.
14743
	(grub_net_add_addr): Add const.
14744
	(GRUB_NET_BOOTP_*): New enum.
14745
	(grub_net_addr_cmp): New proto.
14746
	(GRUB_NET_MAX_STR_ADDR_LEN): Take IPV6 into account.
14747
	(GRUB_NET_MAX_STR_HWADDR_LEN): New define.
14748
	(grub_net_hwaddr_to_str): NEw proto.
14749
	(FOR_NET_NETWORK_LEVEL_INTERFACES): New macro.
14750
	(FOR_NET_NETWORK_LEVEL_INTERFACES_SAFE): Handle NULL.
14751
	(grub_dns_init): New proto.
14752
	(grub_dns_fini): Likewise.
14753
	(grub_net_tcp_retransmit): Likewise.
14754
	(grub_net_link_layer_add_address): Likewise.
14755
	(grub_net_link_layer_resolve_check): Likewise.
14756
	(grub_net_link_layer_resolve): Likewise.
14757
	(grub_net_dns_lookup): Likewise.
14758
	(grub_net_add_dns_server): Likewise.
14759
	(grub_net_remove_dns_server): Likewise.
14760
	(GRUB_NET_TRIES): New const.
14761
	(GRUB_NET_INTERVAL): Likewise.
14762
	* include/grub/net/arp.h: Mostly rewritten.
14763
	* include/grub/net/ethernet.h (grub_net_ethertype_t): New enum.
14764
	* include/grub/net/ip.h: Mostly rewritten.
14765
	* include/grub/net/netbuff.h: Indent.
14766
	* include/grub/net/tcp.h: New file.
14767
	* include/grub/net/udp.h: Mostly rewritten.
14768
	* include/grub/priority_queue.h: New file.
14769
	* include/grub/types.h (PRIdGRUB_SSIZE): New define.
14770
	(grub_swap_bytes64_compile_time): Likewise.
14771
	(grub_cpu_to_be16_compile_time): Likewise.
14772
	(grub_cpu_to_be32_compile_time): Likewise.
14773
	(grub_cpu_to_be64_compile_time): Likewise.
14774
	(grub_be_to_cpu64_compile_time): Likewise.
14775
14776
2011-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
14777
14778
	* grub-core/commands/i386/pc/drivemap.c (int13slot): Replace
14779
	UINT_TO_PTR with cast.
14780
14781
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14782
14783
	* util/import_gcry.py: Skip _gcry_rmd160_mixblock and serpent_test. We
14784
	don't use them.
14785
14786
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14787
14788
	* util/import_gcry.py: Don't add include camellia.h to camellia.c. It's
14789
	already there.
14790
14791
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14792
14793
	* util/grub-mkimage.c (generate_image): Clean multiboot header to avoid
14794
	confusing ipxe.
14795
14796
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14797
14798
	* grub-core/lib/libgcrypt/cipher/md4.c (transform) [WORDS_BIGENDIAN]:
14799
	Add missing const attribute.
14800
	* grub-core/lib/libgcrypt/cipher/md5.c (transform) [WORDS_BIGENDIAN]:
14801
	Likewise.
14802
	* grub-core/lib/libgcrypt/cipher/rmd160.c (transform) [WORDS_BIGENDIAN]:
14803
	Likewise.
14804
14805
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14806
14807
	* grub-core/lib/libgcrypt/cipher/serpent.c (serpent_key_prepare): Fix
14808
	misaligned access.
14809
	(serpent_setkey): Likewise.
14810
	(serpent_encrypt_internal): Likewise.
14811
	(serpent_decrypt_internal): Likewise.
14812
	(serpent_encrypt): Don't put an alignment-increasing cast.
14813
	(serpent_decrypt): Likewise.
14814
	(serpent_test): Likewise.
14815
14816
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14817
14818
	* grub-core/loader/multiboot.c (grub_cmd_module): Fix target address.
14819
14820
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14821
14822
	Replace UINT_TO_PTR and PTR_TO_UINT with explicit grub_addr_t casts.
14823
14824
	* include/grub/types.h (UINT_TO_PTR): Removed. All users switched to
14825
	grub_addr_t casts.
14826
	(PTR_TO_UINT64): Likewise.
14827
	(PTR_TO_UINT32): Likewise.
14828
14829
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14830
14831
	* util/grub-mkimage.c (generate_image): Decrease the higher limit
14832
	because of stack.
14833
	* util/grub-setup.c (setup): Don't add redundancy past the higher load
14834
	limit.
14835
14836
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14837
14838
	* grub-core/gfxmenu/gui_label.c (label_paint): Handle the case
14839
	text_width > available width a bit more gracefully.
14840
14841
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14842
14843
	* grub-core/loader/i386/bsdXX.c (grub_freebsd_load_elfmodule): Fix
14844
	current address calculation.
14845
14846
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14847
14848
	* grub-core/lib/reed_solomon.c (decode_block): Allocate on heap and not
14849
	stack.
14850
	(encode_block): Likewise.
14851
14852
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14853
14854
	* grub-core/boot/i386/pc/startup_raw.S: Clear direction flag for
14855
	certainety.
14856
14857
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14858
14859
	* grub-core/boot/i386/pc/startup_raw.S: Move realmode routines to
14860
	non-RS part to avoid RS messing with GDT.
14861
	* include/grub/offsets.h (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART):
14862
	Increase to suit in realmode routines.
14863
14864
2011-12-15  Vladimir Serbinenko  <phcoder@gmail.com>
14865
14866
	* grub-core/kern/i386/realmode.S: Increase alignment.
14867
	* grub-core/boot/i386/pc/startup_raw.S: Likewise.
14868
14869
2011-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
14870
14871
	* grub-core/lib/reed_solomon.c (init_powx): Set gf_powx_inv[0] just to
14872
	be deterministic.
14873
	(syndroms): Compute 0 syndrom.
14874
	(rs_recover): Use 0 syndrom.
14875
14876
2011-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
14877
14878
	* include/grub/kernel.h (FOR_MODULES): Make it a bit faster.
14879
14880
2011-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
14881
14882
	* include/grub/types.h (GRUB_PROPERLY_ALIGNED_ARRAY): Add missing
14883
	brackets.
14884
14885
2011-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
14886
14887
	* grub-core/gfxmenu/widget-box.c (get_left_pad): Take corners into
14888
	account.
14889
	(get_top_pad): Likewise.
14890
	(get_right_pad): Likewise.
14891
	(get_bottom_pad): Likewise.
14892
14893
2011-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
14894
14895
	* grub-core/gfxmenu/gui_list.c (draw_menu): Don't use assignment in if.
14896
14897
2011-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
14898
14899
	* include/grub/efi/api.h (grub_efi_memory_descriptor): Add packed
14900
	attribute as the structure isn't guaranteed to be properly aligned.
14901
	(grub_efi_pci_device_path): Likewise.
14902
	(grub_efi_pccard_device_path): Likewise.
14903
	(grub_efi_memory_mapped_device_path): Likewise. Additionaly explicitly
14904
	specify the size of `memory_type'.
14905
	(grub_efi_vendor_device_path): Likewise.
14906
	(grub_efi_controller_device_path): Likewise.
14907
	(grub_efi_acpi_device_path): Likewise.
14908
	(grub_efi_expanded_acpi_device_path): Likewise.
14909
	(grub_efi_atapi_device_path): Likewise.
14910
	(grub_efi_scsi_device_path): Likewise.
14911
	(grub_efi_fibre_channel_device_path): Likewise.
14912
	(grub_efi_1394_device_path): Likewise.
14913
	(grub_efi_usb_device_path): Likewise.
14914
	(grub_efi_usb_class_device_path): Likewise.
14915
	(grub_efi_i2o_device_path): Likewise.
14916
	(grub_efi_mac_address_device_path): Likewise.
14917
	(grub_efi_ipv4_device_path): Likewise.
14918
	(grub_efi_ipv6_device_path): Likewise.
14919
	(grub_efi_infiniband_device_path): Likewise.
14920
	(grub_efi_uart_device_path): Likewise.
14921
	(grub_efi_vendor_messaging_device_path): Likewise.
14922
	(grub_efi_hard_drive_device_path): Likewise.
14923
	(grub_efi_cdrom_device_path): Likewise.
14924
	(grub_efi_vendor_media_device_path): Likewise.
14925
	(grub_efi_file_path_device_path): Likewise.
14926
	(grub_efi_protocol_device_path): Likewise.
14927
	(grub_efi_piwg_device_path): Likewise.
14928
	(grub_efi_bios_device_path): Likewise.
14929
14930
2011-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
14931
14932
	* include/grub/charset.h (grub_utf16_to_utf8): Make src a const pointer.
14933
	(grub_ucs4_to_utf8_alloc): Likewise.
14934
	(grub_ucs4_to_utf8): Likewise.
14935
	* grub-core/normal/charset.c (grub_ucs4_to_utf8): Likewise.
14936
	(grub_ucs4_to_utf8_alloc): Likewise.
14937
14938
2011-12-14  Vladimir Serbinenko  <phcoder@gmail.com>
14939
14940
	AFFS never uses unicode.
14941
14942
	* include/grub/charset.h (GRUB_MAX_UTF8_PER_LATIN1): New const.
14943
	(grub_latin1_to_utf8): New inline function.
14944
	* grub-core/fs/affs.c (grub_affs_iterate_dir): Convert latin1 to UTF8.
14945
14946
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
14947
14948
	* grub-core/fs/romfs.c (grub_romfs_mount): Fix pointer comparison
14949
	overflow.
14950
14951
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
14952
14953
	* grub-core/fs/squash4.c (grub_squash_inode): Fix field sizes.
14954
	(grub_squash_dirent_header): Likewise.
14955
	(read_chunk): Don't double swap.
14956
	(grub_squash_iterate_dir): Fix swap sizes.
14957
14958
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
14959
14960
	* grub-core/fs/jfs.c (grub_jfs_getent): Handle UTF16 endianness.
14961
14962
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
14963
14964
	* grub-core/fs/hfs.c (grub_hfs_find_node): Handle unaligned keys.
14965
	(grub_hfs_iterate_dir): Likewise.
14966
14967
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
14968
14969
	Fix video on platforms where unaligned access is forbidden.
14970
	Make several optimisations while on it.
14971
14972
	* grub-core/video/fb/fbblit.c (grub_video_fbblit_replace_directN):
14973
	Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
14974
	(grub_video_fbblit_replace_32bit_1bit): Likewise.
14975
	(grub_video_fbblit_replace_24bit_1bit) [!GRUB_HAVE_UNALIGNED_ACCESS]:
14976
	Disable.
14977
	(grub_video_fbblit_replace_16bit_1bit):
14978
	Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
14979
	(grub_video_fbblit_replace_8bit_1bit): Likewise.
14980
	(grub_video_fbblit_replace_BGRX8888_RGBX8888): Likewise.
14981
	(grub_video_fbblit_replace_BGRX8888_RGB888): Likewise.
14982
	(grub_video_fbblit_replace_BGR888_RGBX8888): Likewise.
14983
	(grub_video_fbblit_replace_BGR888_RGBX8888): Likewise.
14984
	(grub_video_fbblit_replace_BGR888_RGB888): Likewise.
14985
	(grub_video_fbblit_replace_RGBX8888_RGB88): Likewise.
14986
	(grub_video_fbblit_replace_RGB888_RGBX888): Likewise.
14987
	(grub_video_fbblit_replace_RGB888_RGBX8888): Likewise.
14988
	(grub_video_fbblit_replace_index_RGBX8888): Likewise.
14989
	(grub_video_fbblit_replace_index_RGB888): Likewise.
14990
	(grub_video_fbblit_blend_BGRA8888_RGBA8888): Likewise.
14991
	(grub_video_fbblit_blend_BGR888_RGBA8888): Likewise.
14992
	(grub_video_fbblit_blend_RGBA8888_RGBA8888): Likewise.
14993
	(grub_video_fbblit_blend_RGB888_RGBA8888): Likewise.
14994
	(grub_video_fbblit_blend_index_RGBA8888): Likewise.
14995
	(grub_video_fbblit_blend_XXXA8888_1bit): Likewise.
14996
	(grub_video_fbblit_blend_XXX888_1bit) [!GRUB_HAVE_UNALIGNED_ACCESS]:
14997
	Disable.
14998
	(grub_video_fbblit_blend_XXX565_1bit):
14999
	Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
15000
	* grub-core/video/fb/fbfill.c (grub_video_fbfill_direct32): Likewise.
15001
	* grub-core/video/fb/fbutil.c (grub_video_fb_get_video_ptr): Return
15002
	void *.
15003
	* grub-core/video/fb/video_fb.c (common_blitter)
15004
	[!GRUB_HAVE_UNALIGNED_ACCESS]: Skip disabled blitters.
15005
	(grub_video_fb_create_render_target_from_pointer)
15006
	[!GRUB_HAVE_UNALIGNED_ACCESS]: Check alignment.
15007
	* include/grub/fbutil.h (grub_video_fb_get_video_ptr): Return void *.
15008
	* include/grub/i386/types.h (GRUB_HAVE_UNALIGNED_ACCESS): New
15009
	definition.
15010
	* include/grub/x86_64/types.h (GRUB_HAVE_UNALIGNED_ACCESS): Likewise.
15011
15012
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15013
15014
	* grub-core/kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Support
15015
	HH22 and HM10 relocations.
15016
15017
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15018
15019
	* grub-core/kern/misc.c (grub_vsnprintf_real): Fix fmt2 parsing.
15020
15021
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15022
15023
	* grub-core/commands/videotest.c (grub_cmd_videotest): Check that
15024
	allocation succeeded.
15025
15026
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15027
15028
	* grub-core/fs/iso9660.c (grub_iso9660_convert_string): Make first
15029
	argument a u8 pointer. All users updated.
15030
	Handle unaligned buffers.
15031
15032
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15033
15034
	* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Force inlining of
15035
	add_part to workaround compiler bug.
15036
15037
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15038
15039
	* include/grub/kernel.h (FOR_MODULES): Preserve alignment invariants.
15040
15041
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15042
15043
	* grub-core/loader/multiboot_mbi2.c (grub_multiboot_add_elfsyms):
15044
	Reserve alignment invariants.
15045
	(grub_multiboot_load): Likewise.
15046
	(retrieve_video_parameters): Likewise.
15047
	(grub_multiboot_make_mbi): Likewise.
15048
15049
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15050
15051
	* grub-core/loader/i386/xnu.c (grub_xnu_devprop_remove_property): Fix
15052
	incorrect pointer.
15053
15054
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15055
15056
	* grub-core/disk/pata.c (grub_pata_pio_read): Handle unaligned buffer.
15057
	(grub_pata_pio_write): Likewise.
15058
15059
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15060
15061
	Add noreturn attributes and remove unreachable code.
15062
15063
	* grub-core/bus/cs5536.c (grub_cs5536_smbus_wait): Remove unreachable
15064
	code.
15065
	* grub-core/commands/halt.c (grub_cmd_halt): Remove unreachable
15066
	code. Mark as noreturn.
15067
	* grub-core/commands/minicmd.c (grub_mini_cmd_exit): Likewise.
15068
	* grub-core/commands/reboot.c (grub_cmd_reboot): Likewise.
15069
	* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Remove
15070
	unreachable code.
15071
	* grub-core/kern/main.c (grub_main): Mark as noreturn.
15072
	* grub-core/kern/rescue_reader.c (grub_rescue_run): Likewise.
15073
	* grub-core/lib/posix_wrap/stdlib.h (abort): Likewise.
15074
	* grub-core/normal/menu.c (run_menu): Remove unreachable code.
15075
	* include/grub/kernel.h (grub_main): Mark as noreturn.
15076
	* include/grub/reader.h (grub_rescue_run): Likewise.
15077
15078
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15079
15080
	* include/grub/i386/qemu/memory.h (grub_machine_mmap_init): Remove
15081
	redundant declaration.
15082
15083
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15084
15085
	* include/grub/net.h (grub_net_network_level_interfaces): Remove
15086
	redundant declaration.
15087
	(FOR_NET_NETWORK_LEVEL_INTERFACES): Move to appropriate place.
15088
15089
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15090
15091
	* grub-core/commands/hdparm.c (le16_to_char): Make src and dest uint16 *
15092
	to ensure alignment.
15093
	(grub_hdparm_print_identify): Make argument uint16 * to ensure
15094
	alignment. Ensure tmp alignment.
15095
	(grub_cmd_hdparm): Ensure buf alignment.
15096
	* grub-core/disk/ata.c (grub_ata_strncpy): Make src and dest uint16 *
15097
	to ensure alignment.
15098
	(grub_ata_dumpinfo): Ensure text alignment.
15099
	(grub_atapi_identify): Preserve alignment invariant.
15100
	(grub_ata_identify): Likewise. Use grub_get_unaligned32 when necessary.
15101
15102
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15103
15104
	* include/grub/emu/misc.h (xasprintf): Add missing format attribute.
15105
	* include/grub/mips/kernel.h (grub_halt): Remove redundant declaration.
15106
	* include/grub/mips/qemu_mips/kernel.h (grub_halt): Likewise.
15107
	* include/grub/misc.h (grub_reboot)
15108
	[GRUB_MACHINE_EMU || GRUB_MACHINE_QEMU_MIPS]: Export.
15109
	(grub_halt) [__mips__]: Likewise.
15110
15111
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15112
15113
	* include/grub/efi/memory.h (grub_machine_mmap_iterate):
15114
	Remove redundant declaration.
15115
	(grub_mmap_get_post64): Likewise.
15116
	(grub_mmap_get_upper): Likewise.
15117
	(grub_mmap_get_lower): Likewise.
15118
15119
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15120
15121
	* grub-core/partmap/dvh.c (grub_dvh_is_valid): Make argument
15122
	uint32_t * to ensure alignment.
15123
	(dvh_partition_map_iterate): Make `block' a union to ensure alignment.
15124
15125
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15126
15127
	* grub-core/partmap/sunpc.c (grub_sun_is_valid): Make argument
15128
	uint16_t * to ensure alignment.
15129
	(sun_pc_partition_map_iterate): Make `block' a union to ensure
15130
	alignment.
15131
15132
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15133
15134
	* grub-core/partmap/sun.c (grub_sun_is_valid): Make argument uint16_t *
15135
	to ensure alignment.
15136
	(sun_partition_map_iterate): Make `block' a union to ensure alignment.
15137
15138
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15139
15140
	* grub-core/fs/ntfs.c (u16at): Make into inline function.
15141
	Handle unaligned pointers.
15142
	(u32at): Likewise.
15143
	(u64at): Likewise.
15144
	(fixup): Use byte access instead of v16at.
15145
	(find_attr): Fix imporper usage of v32at.
15146
	(read_data): Likewise.
15147
	(list_file): Handle byte-swapping and unaligned strings.
15148
	(grub_ntfs_label): Likewise.
15149
15150
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15151
15152
	* grub-core/fs/udf.c (grub_udf_partmap): Add packed attribute
15153
	as it's not necessarily aligned.
15154
15155
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15156
15157
	* grub-core/kern/mips/qemu_mips/init.c (grub_at_keyboard_init): Remove
15158
	redundant declaration.
15159
	(grub_serial_init): Likewise.
15160
	(grub_terminfo_init): Likewise.
15161
15162
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15163
15164
	* grub-core/fs/zfs/zfs.c (DVA_OFFSET_TO_PHYS_SECTOR): Make into inline
15165
	function.
15166
	(ZAP_HASH_IDX): Likewise.
15167
	(ZAP_LEAF_HASH_SHIFT): Likewise.
15168
	(ZAP_LEAF_HASH_NUMENTRIES): Likewise.
15169
	(LEAF_HASH): Likewise.
15170
	(ZAP_LEAF_NUMCHUNKS): Likewise.
15171
	(ZAP_LEAF_CHUNK): Likewise. Changed pointer arithmetic to preserve
15172
	alignment invariants. Return pointer. All users updated.
15173
	(ZAP_LEAF_ENTRY): Make into inline function.
15174
	(NBBY): Removed.
15175
	(xor): LIkewise.
15176
	(xor_out): Use grub_crypto_xor.
15177
	(dnode_get_path): Use grub_get_unaligned.
15178
	(nvlist_find_value): Likewise.
15179
	(grub_zfs_nvlist_lookup_uint64): Likewise.
15180
	(grub_zfs_nvlist_lookup_string): Likewise.
15181
	(get_nvlist_size): Likewise.
15182
	(grub_zfs_open): Likewise.
15183
	(fill_fs_info): Likewise.
15184
	(grub_zfs_dir): Likewise.
15185
	* include/grub/zfs/zap_leaf.h (zap_leaf_phys): Adapt to preserve
15186
	alignment invariants.
15187
	* include/grub/zfs/zio.h (zio_eck_t): Mark as packed as it's not
15188
	necessarily aligned.
15189
15190
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15191
15192
	* grub-core/net/netbuff.c (grub_netbuff_alloc): Ensure proper alignment.
15193
15194
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15195
15196
	* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Change pointer
15197
	arithmetic to conserve alignment invariants.
15198
15199
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15200
15201
	* include/grub/efiemu/efiemu.h (grub_efiemu_get_memory_map): Remove
15202
	redundant declaration.
15203
	(grub_efiemu_mm_obtain_request): Likewise.
15204
	(grub_efiemu_prepare): Likewise.
15205
15206
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15207
15208
	* include/grub/list.h: Explicitly cast return of grub_bad_type_cast
15209
	to match types.
15210
15211
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15212
15213
	* grub-core/fs/hfsplus.c (grub_hfsplus_btree_recoffset): Handle the
15214
	case of aunaligned recptr.
15215
	(grub_hfsplus_read_block): Declare extoverflow as key to ensure
15216
	alignment.
15217
	(grub_hfsplus_btree_search): Handle unaligned index.
15218
15219
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15220
15221
	* grub-core/fs/xfs.c (grub_xfs_iterate_dir): Use grub_get_unaligned16
15222
	to get freetag and skip.
15223
15224
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15225
15226
	* grub-core/fs/nilfs2.c (grub_nilfs2_btree_node): Add zero-size keys
15227
	array.
15228
	(grub_nilfs2_btree_node_dkeys): Ensure return pointer alignment.
15229
	(grub_nilfs2_btree_lookup): Ensure buffer alignment.
15230
15231
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15232
15233
	* grub-core/fs/romfs.c (grub_romfs_iterate_dir): Properly align
15234
	name for checksum and fix allocation algorithm.
15235
15236
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15237
15238
	* include/grub/types.h (grub_properly_aligned_t): New type.
15239
	(GRUB_PROPERLY_ALIGNED_ARRAY): New macro.
15240
	(grub_get_unaligned16): Add explicit casts.
15241
	(grub_get_unaligned32): Likewise.
15242
	(grub_get_unaligned64): Likewise.
15243
	(grub_set_unaligned16): New function.
15244
	(grub_set_unaligned32): Likewise.
15245
15246
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15247
15248
	* grub-core/normal/datetime.c (grub_weekday_names): Make const.
15249
15250
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15251
15252
	* grub-core/fs/udf.c (read_string): Macroify GRUB_MAX_UTF8_PER_UTF16.
15253
	* grub-core/fs/jfs.c (grub_jfs_diropen): Likewise.
15254
	* grub-core/fs/fat.c (grub_fat_iterate_dir): Likewise.
15255
15256
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15257
15258
	* grub-core/term/at_keyboard.c (set_scancodes): Fix preprocessor
15259
	conditionals.
15260
15261
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15262
15263
	* grub-core/kern/emu/main.c (main): Add missing const qualifier.
15264
	* grub-core/loader/efi/appleloader.c (devdata): Likewise.
15265
15266
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15267
15268
	Unify and improve RAID and crypto xor.
15269
15270
	* grub-core/disk/raid.c (grub_raid_block_xor): Removed. All users
15271
	changed to grub_crypto_xor
15272
	* grub-core/lib/crypto.c (grub_crypto_xor): Moved from here ...
15273
	* include/grub/crypto.h (grub_crypto_xor): ... here. Inlined.
15274
	Use bigger types when possible.
15275
15276
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15277
15278
	* grub-core/disk/raid.c (scan_devices): Fix condition.
15279
15280
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15281
15282
	* grub-core/net/drivers/ieee1275/ofnet.c (bootp_response_properties):
15283
	Make name a const ptr.
15284
15285
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15286
15287
	* grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_finddevice): Make
15288
	first argument a const pointer.
15289
	* grub-core/kern/ieee1275/openfw.c (grub_children_iterate): Likewise.
15290
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_finddevice): Update
15291
	proto.
15292
	(grub_children_iterate): Likewise.
15293
	(grub_machine_mmap_iterate): Remove redundant declaration.
15294
15295
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15296
15297
	* grub-core/commands/acpi.c (grub_acpi_create_ebda) [!x86]: Disable.
15298
	(grub_cmd_acpi) [!x86]: Disable EBDA.
15299
15300
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15301
15302
	Enable UTF8 in gnulib regexp.
15303
15304
	* config.h.in (RE_ENABLE_I18N) [!GRUB_UTIL]: New define.
15305
	* grub-core/lib/posix_wrap/ctype.h (islower): Use grub_islower.
15306
	(isupper): Use grub_isupper.
15307
	(isascii): New inline function.
15308
	* grub-core/lib/posix_wrap/wchar.h: Replace dummy with real contents.
15309
	* grub-core/lib/posix_wrap/wctype.h: Likewise.
15310
	* grub-core/normal/charset.c (grub_utf8_process): New function.
15311
	(grub_utf8_to_utf16): Use grub_utf8_process.
15312
	(grub_encode_utf8_character): New function.
15313
	(grub_ucs4_to_utf8): Use grub_encode_utf8_character.
15314
	* include/grub/charset.h (grub_utf8_process): New declaration.
15315
	(grub_encode_utf8_character): Likewise.
15316
	* include/grub/misc.h (grub_islower): New inline function.
15317
	(grub_isupper): Likewise.
15318
	(grub_strchrsub): Moved down to fix the definitions.
15319
15320
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15321
15322
	* grub-core/bus/usb/ohci.c (grub_ohci_check_transfer): Add an unsigned
15323
	specification.
15324
15325
2011-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
15326
15327
	* include/grub/loader.h (grub_loader_register_preboot_hook):
15328
	Use struct preboot * and not void * for handle. All users updated.
15329
	(grub_loader_unregister_preboot_hook): Likewise.
15330
15331
2011-12-12  Vladimir Serbinenko  <phcoder@gmail.com>
15332
15333
	* include/grub/charset.h (GRUB_MAX_UTF8_PER_UTF16): New const.
15334
	* grub-core/fs/hfsplus.c (grub_hfsplus_catkey_internal): Change to
15335
	UTF-16-BE. All users updated.
15336
	(grub_hfsplus_cmp_catkey): Fix unicode handling.
15337
	(grub_hfsplus_iterate_dir): Likewise.
15338
	(grub_hfsplus_label): Likewise.
15339
15340
2011-12-12  Vladimir Serbinenko  <phcoder@gmail.com>
15341
15342
	* grub-core/disk/ahci.c (grub_ahci_pciinit): Fix compat condition.
15343
15344
2011-11-30  Vladimir Serbinenko  <phcoder@gmail.com>
15345
15346
	Add missing const qualifiers.
15347
15348
	* grub-core/commands/i386/pc/sendkey.c (keysym): Add missing const.
15349
	* grub-core/commands/lspci.c (grub_pci_classname): Likewise.
15350
	* grub-core/commands/menuentry.c (hotkey_aliases): Likewise.
15351
	* grub-core/disk/lvm.c (grub_lvm_getvalue): Likewise.
15352
	(grub_lvm_check_flag): Likewise.
15353
	* grub-core/efiemu/i386/coredetect.c
15354
	(grub_efiemu_get_default_core_name): Likewise
15355
	* grub-core/efiemu/main.c (grub_efiemu_autocore): Likewise.
15356
	* grub-core/fs/hfsplus.c (grub_hfsplus_catkey_internal): Likewise.
15357
	* grub-core/fs/ntfs.c (fixup): Likewise.
15358
	* grub-core/fs/xfs.c (grub_xfs_iterate_dir): Likewise.
15359
	* grub-core/fs/zfs/zfs.c (decomp_entry): Likewise.
15360
	(fzap_lookup): Likewise.
15361
	(zap_lookup): Likewise.
15362
	* grub-core/gnulib/regcomp.c (init_dfa): Likewise.
15363
	* grub-core/lib/legacy_parse.c (check_option): Likewise.
15364
	* grub-core/lib/posix_wrap/langinfo.h (nl_langinfo): Likewise.
15365
	* grub-core/loader/i386/bsd.c (grub_bsd_add_meta): Likewise.
15366
	(grub_freebsd_add_meta_module): Likewise.
15367
	(grub_cmd_freebsd_module): Likewise.
15368
	* grub-core/loader/i386/xnu.c (tbl_alias): Likewise.
15369
	* grub-core/loader/xnu.c (grub_xnu_register_memory): Likewise.
15370
	(grub_xnu_writetree_get_size): Likewise.
15371
	(grub_xnu_writetree_toheap_real): Likewise.
15372
	(grub_xnu_find_key): Likewise.
15373
	(grub_xnu_create_key): Likewise.
15374
	(grub_xnu_create_value): Likewise.
15375
	(grub_xnu_register_memory): Likewise.
15376
	(grub_xnu_check_os_bundle_required): Likewise.
15377
	(grub_xnu_scan_dir_for_kexts): Likewise.
15378
	(grub_xnu_load_kext_from_dir): Likewise.
15379
	* grub-core/normal/color.c (color_list): Likewise.
15380
	* grub-core/normal/completion.c (current_word): Likewise.
15381
	* grub-core/normal/menu_entry.c (insert_string): Likewise.
15382
	* grub-core/term/serial.c (grub_serial_find): Likewise.
15383
	* grub-core/term/tparm.c (grub_terminfo_tparm): Likewise.
15384
	* include/grub/efiemu/efiemu.h (grub_efiemu_get_default_core_name):
15385
	Likewise.
15386
	* include/grub/i386/bsd.h (grub_bsd_add_meta): Likewise.
15387
	(grub_freebsd_add_meta_module): Likewise.
15388
	* include/grub/lib/arg.h (grub_arg_option): Likewise.
15389
	* include/grub/net.h (grub_net_card_driver): Likewise.
15390
	(grub_net_card): Likewise.
15391
	(grub_net_app_protocol): Likewise.
15392
	* include/grub/parttool.h (grub_parttool_argdesc): Likewise.
15393
	* include/grub/serial.h (grub_serial_find): Likewise.
15394
	* include/grub/tparm.h (grub_terminfo_tparm): Likewise.
15395
	* include/grub/xnu.h (grub_xnu_create_key): Likewise.
15396
	(grub_xnu_create_value): Likewise.
15397
	(grub_xnu_find_key): Likewise.
15398
	(grub_xnu_scan_dir_for_kexts): Likewise.
15399
	(grub_xnu_load_kext_from_dir): Likewise.
15400
15401
	* include/grub/zfs/zio_checksum.h (zio_checksum_t): Moved from here ...
15402
	* grub-core/fs/zfs/zfs.c (zio_checksum_t): ...here.
15403
	* include/grub/zfs/zio_checksum.h (zio_checksum_info):
15404
	Moved from here ...
15405
	* grub-core/fs/zfs/zfs.c (zio_checksum_info): ... here. Added missing const.
15406
15407
2011-11-28  Colin Watson  <cjwatson@ubuntu.com>
15408
15409
	* util/getroot.c (find_root_device_from_libzfs): Use xasprintf.
15410
15411
2011-11-27  Vladimir Serbinenko  <phcoder@gmail.com>
15412
15413
	* grub-core/fs/zfs/zfs.c (recovery): Fix spelling.
15414
	(read_device): Fix size calculation.
15415
15416
2011-11-25  Robert Millan  <rmh@gnu.org>
15417
15418
	* util/getroot.c [HAVE_LIMITS_H]: Include `<limits.h>'.
15419
	(find_root_device_from_libzfs): Add zpool output parser to be used
15420
	as fallback when libzfs isn't available.
15421
15422
2011-11-25  Seth Goldberg <seth.goldberg@oracle.com>
15423
15424
	* po/Makefile.in.in: Add missing escape-continuation.
15425
15426
2011-11-25  Vladimir Serbinenko  <phcoder@gmail.com>
15427
15428
	* grub-core/fs/cpio.c (grub_cpio_dir): Handle subdirs correctly.
15429
15430
2011-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
15431
15432
	* grub-core/kern/dl.c (grub_dl_load_segments): Fix alignment handling.
15433
15434
2011-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
15435
15436
	* grub-core/kern/dl.c (grub_dl_unload): Fix freeing segments.
15437
15438
2011-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
15439
15440
	* grub-core/kern/x86_64/efi/callwrap.S: Fix the comment.
15441
15442
2011-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
15443
15444
	* grub-core/lib/adler32.c: Add missing license specification.
15445
	* grub-core/lib/crc64.c: Likewise.
15446
	* grub-core/loader/i386/pc/plan9.c: Likewise.
15447
	* grub-core/partmap/plan.c: Likewise.
15448
15449
2011-11-13  Lubomir Kundrak  <lkundrak@redhat.com>
15450
15451
	Add facility to debug GRUB with gdb under qemu.
15452
15453
	* grub-core/gdb_grub.in: New file.
15454
	* grub-core/gmodule.pl.in: Likewise.
15455
	* grub-core/Makefile.core.def (gmodule.pl): New script.
15456
	(gdb_grub): Likewise.
15457
15458
2011-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
15459
15460
	* util/grub-mount.c (argp_parser): Accept relative pathes.
15461
	* util/grub-fstest.c (argp_parser): Likewise.
15462
15463
2011-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
15464
15465
	Plan9 support.
15466
15467
	* Makefile.util.def (libgrubmods): Add
15468
	grub-core/partmap/plan.c.
15469
	* docs/grub.texi: Notice Plan9 support.
15470
	* grub-core/Makefile.core.def (plan9): New module.
15471
	(part_plan): Likewise.
15472
	* grub-core/loader/i386/pc/plan9.c: New file.
15473
	* grub-core/partmap/plan.c: Likewise.
15474
	* include/grub/msdos_partition.h (GRUB_PC_PARTITION_TYPE_PLAN9): New
15475
	define.
15476
	(GRUB_PC_PARTITION_TYPE_LINUX_SWAP): Likewise.
15477
	* include/grub/mm.h (grub_extend_alloc): New inline function.
15478
15479
2011-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
15480
15481
	Make Reed-Solomon faster by using power of generator representation of
15482
	GF(256)*.
15483
15484
	* grub-core/lib/reed_solomon.c (grub_uint16_t) [TEST]: Removed.
15485
	(gf_double_t): Likewise.
15486
	(gf_invert): Removed.
15487
	(gf_powx): New array.
15488
	(gf_powx_inv): Likewise.
15489
	(scratch): Move higher.
15490
	(gf_reduce): Removed.
15491
	(gf_mul): Use powx.
15492
	(gf_invert): Likewise.
15493
	(init_inverts): Replaced with ...
15494
	(init_powx): ...this. All users updated.
15495
	(pol_evaluate): Replace multiplications with additions.
15496
	(rs_encode): Likewise.
15497
	(gauss_eliminate): Call gf_invert.
15498
	(grub_reed_solomon_add_redundancy): Call init_powx.
15499
	(grub_reed_solomon_recover): Call init_powx unconditionally.
15500
15501
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15502
15503
	* grub-core/partmap/gpt.c (gpt_partition_map_embed): Fix spelling.
15504
15505
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15506
15507
	* grub-core/partmap/gpt.c (gpt_partition_map_embed): Restore
15508
	disk->partiton for safety.
15509
15510
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15511
15512
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev):
15513
	Fix a memory leak.
15514
	(grub_util_biosdisk_get_grub_dev): Add a useful debug info.
15515
15516
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15517
15518
	* grub-core/kern/emu/hostdisk.c (find_system_device): Fix a memory leak.
15519
15520
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15521
15522
	* include/grub/lvm.h (grub_lvm_pv): Correct start type.
15523
15524
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15525
15526
	Fix spaces handling in proc/self/mountinfo.
15527
15528
	* util/getroot.c (unescape): New function.
15529
	(grub_find_root_device_from_mountinfo): Use unescape.
15530
15531
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15532
15533
	Support ZFS embedding.
15534
15535
	* grub-core/fs/zfs/zfs.c (grub_zfs_embed): New function.
15536
	(grub_zfs_fs): Register grub_zfs_embed.
15537
15538
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15539
15540
	Fix MIPS compilation.
15541
15542
	* grub-core/boot/mips/startup_raw.S: Use GRUB_DECOMPRESSOR_*
15543
	* include/grub/offsets.h: Rename decompressor fields from
15544
	GRUB_KERNEL_* to GRUB_DECOMPRESSOR_*.
15545
	* util/grub-mkimage.c (image_targets): Use new names.
15546
15547
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15548
15549
	Defer multiboot device parsing until we're in compressed part.
15550
15551
	* grub-core/boot/i386/pc/lnxboot.S: Remove setting dos_part and
15552
	bsd_part. setdevice has fallen into disuse.
15553
	* grub-core/boot/i386/pc/startup_raw.S (dos_part): Removed.
15554
	(bsd_part): Likewise.
15555
	(boot_dev): New variable.
15556
	(multiboot_trampoline): Don't parse multiboot device.
15557
	Pass multiboot device in %edx.
15558
	* grub-core/disk/i386/pc/biosdisk.c (GRUB_MOD_INIT): Parse
15559
	grub_boot_device.
15560
	* grub-core/kern/i386/pc/init.c (grub_machine_get_bootlocation):
15561
	Likewise.
15562
	* grub-core/kern/i386/pc/startup.S: Save edx.
15563
	(grub_boot_drive): Removed.
15564
	(grub_install_dos_part): Likewise.
15565
	(grub_install_bsd_part): Likewise.
15566
	(grub_boot_device): New variable.
15567
	* include/grub/i386/pc/kernel.h (grub_install_dos_part): Removed.
15568
	(grub_install_bsd_part): Likewise.
15569
	(grub_boot_drive): Likewise.
15570
	(grub_boot_device): New variable.
15571
	* include/grub/offsets.h (GRUB_KERNEL_I386_PC_INSTALL_DOS_PART):
15572
	Removed.
15573
	(GRUB_KERNEL_I386_PC_INSTALL_BSD_PART): Likewise.
15574
	(GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY): Moved lower.
15575
	(GRUB_KERNEL_MACHINE_INSTALL_BSD_PART): Removed.
15576
	(GRUB_KERNEL_MACHINE_INSTALL_DOS_PART): Likewise.
15577
	* util/grub-install.in: Remove redundant condition.
15578
15579
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15580
15581
	Fix bug introduced by previous commit.
15582
15583
	* grub-core/boot/i386/pc/startup_raw.S: Compute RS start correctly.
15584
15585
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15586
15587
	Use decompressors framework on i386-pc. It increases core size
15588
	by 46 bytes but improves compatibility and maintainability.
15589
15590
	* grub-core/Makefile.core.def (lzma_decompress): New image.
15591
	(kernel): Add i386_pc_ldflags.
15592
	* grub-core/kern/i386/pc/startup.S: Move intial part to ..
15593
	* grub-core/boot/i386/pc/startup_raw.S: ... here. Pass pointers
15594
	to real_to_prot, prot_to_real and device info.
15595
	* include/grub/offsets.h: Renamed decompressor offsets.
15596
	* util/grub-mkimage.c (grub_compression_t): New cmpression lzma.
15597
	(image_target_desc): Remove raw_size and rename decompressor fields.
15598
	(compress_kernel): Handle lzma.
15599
	(generate_image): Handle decompressors on i386-pc.
15600
15601
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15602
15603
	* configure.ac: Add -fno-asynchronous-unwind-tables.
15604
15605
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15606
15607
	Move assembly code to C by using intwrap. It increases core size
15608
	by 88 bytes but improves compatibility and maintainability.
15609
15610
	* grub-core/kern/i386/pc/startup.S (grub_console_putchar): Moved to ...
15611
	* grub-core/term/i386/pc/console.c (grub_console_putchar_real):
15612
	... here. Translated to C.
15613
	* grub-core/kern/i386/pc/startup.S (grub_console_getkey): Moved to ...
15614
	* grub-core/term/i386/pc/console.c (grub_console_getkey):
15615
	... here. Translated to C.
15616
	* grub-core/kern/i386/pc/startup.S (grub_console_getxy): Moved to ...
15617
	* grub-core/term/i386/pc/console.c (grub_console_getxy):
15618
	... here. Translated to C.
15619
	* grub-core/kern/i386/pc/startup.S (grub_console_gotoxy): Moved to ...
15620
	* grub-core/term/i386/pc/console.c (grub_console_gotoxy):
15621
	... here. Translated to C.
15622
	* grub-core/kern/i386/pc/startup.S (grub_console_cls): Moved to ...
15623
	* grub-core/term/i386/pc/console.c (grub_console_cls):
15624
	... here. Translated to C.
15625
	* grub-core/kern/i386/pc/startup.S (grub_console_setcursor): Moved to ..
15626
	* grub-core/term/i386/pc/console.c (grub_console_setcursor):
15627
	... here. Translated to C.
15628
	* grub-core/kern/i386/pc/startup.S (grub_get_rtc): Moved to ..
15629
	* grub-core/kern/i386/pc/init.c (grub_get_rtc): ... here.
15630
	Translated to C.
15631
	* grub-core/term/i386/pc/console.c (int10_9): New function.
15632
	(grub_console_putchar): Likewise.
15633
	* include/grub/i386/pc/console.h: Removed the not anymore shared
15634
	functions.
15635
15636
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15637
15638
	Move grub_chainloader_real_boot out of the kernel.
15639
15640
	* grub-core/Makefile.am: Remove machine/loader.h.
15641
	* grub-core/kern/i386/pc/startup.S (grub_chainloader_real_boot):
15642
	Removed.
15643
	* grub-core/lib/i386/relocator.c (grub_relocator16_esi): New extern
15644
	variable.
15645
	(grub_relocator16_keep_a20_enabled): Likewise.
15646
	(grub_relocator16_boot): Fill new variables.
15647
	* grub-core/lib/i386/relocator16.S: Add gate a20 handling.
15648
	* grub-core/loader/i386/pc/chainloader.c (grub_chainloader_boot): Use
15649
	relocator.
15650
	(grub_chainloader_unload): Likewise.
15651
	(grub_chainloader_cmd): Likewise.
15652
	* include/grub/i386/pc/loader.h: Removed.
15653
	* include/grub/i386/relocator.h (grub_relocator16_state): Add a20
15654
	and esi. All initialisers updated.
15655
15656
2011-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
15657
2011-11-12  Colin Watson  <cjwatson@ubuntu.com>
15658
15659
	* Makefile.util.def (grub-mount): New util.
15660
	* .bzrignore: Add grub-mount.
15661
	* configure.ac: Check for fuse and enable grub-mount if available.
15662
	* docs/man/grub-mount.h2m: New file.
15663
	* util/grub-mount.c: Likewise.
15664
15665
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15666
15667
	* grub-core/commands/efi/fixvideo.c: Gettextize.
15668
	* grub-core/commands/hashsum.c: Likewise.
15669
	* grub-core/commands/i386/cmostest.c: Likewise.
15670
	* grub-core/commands/i386/pc/drivemap.c: Likewise.
15671
	* grub-core/commands/i386/pc/lsapm.c: Likewise.
15672
	* grub-core/commands/i386/pc/sendkey.c: Likewise.
15673
	* grub-core/commands/lsmmap.c: Likewise.
15674
	* grub-core/commands/menuentry.c: Likewise.
15675
	* grub-core/commands/mips/loongson/lsspd.c: Likewise.
15676
	* grub-core/commands/setpci.c: Likewise.
15677
	* grub-core/loader/i386/bsd.c: Likewise.
15678
	* grub-core/loader/i386/linux.c: Likewise.
15679
	* util/getroot.c: Likewise.
15680
	* util/grub-editenv.c: Likewise.
15681
	* util/grub-fstest.c: Likewise.
15682
	* util/grub-mkfont.c: Likewise.
15683
	* util/grub-mkimage.c: Likewise.
15684
	* util/grub-mkpasswd-pbkdf2.c: Likewise.
15685
	* util/grub-pe2elf.c: Likewise.
15686
	* util/grub-probe.c: Likewise.
15687
	* util/grub-setup.c: Likewise.
15688
	* util/ieee1275/ofpath.c: Likewise.
15689
	* util/misc.c: Likewise.
15690
	* util/raid.c: Likewise.
15691
15692
2011-11-11  Robert Millan  <rmh@gnu.org>
15693
15694
	* util/getroot.c (grub_util_get_geom_abstraction): Remove
15695
	__attribute__((unused)) from `os_dev', which *is* being used.
15696
15697
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15698
15699
	* include/grub/dl.h (GRUB_ARCH_DL_TRAMP_SIZE) [__ia64__]: Add back
15700
	forgotten define.
15701
	(GRUB_ARCH_DL_GOT_ALIGN) [__ia64__]: Redefine in terms of
15702
	GRUB_IA64_DL_GOT_ALIGN.
15703
	(GRUB_ARCH_DL_TRAMP_ALIGN) [__ia64__]: Redefine in terms of
15704
	GRUB_IA64_DL_TRAMP_ALIGN.
15705
15706
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15707
15708
	Replace grub_fatal with normal errors in i386 linux loader.
15709
15710
	* grub-core/loader/i386/linux.c (find_efi_mmap_size): Return 0 on error.
15711
	(allocate_pages): Check find_efi_mmap_size return value.
15712
	(grub_e820_add_region): Return error.
15713
	(grub_linux_boot): Check mmap return value.
15714
15715
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15716
15717
	* grub-core/commands/acpihalt.c: Gettextized.
15718
	* grub-core/commands/cacheinfo.c: Likewise.
15719
	* grub-core/commands/cmp.c: Likewise.
15720
	* grub-core/commands/efi/loadbios.c: Likewise.
15721
	* grub-core/commands/gptsync.c: Likewise.
15722
	* grub-core/commands/ieee1275/suspend.c: Likewise.
15723
	* grub-core/commands/legacycfg.c: Likewise.
15724
	* grub-core/commands/memrw.c: Likewise.
15725
	* grub-core/commands/minicmd.c: Likewise.
15726
	* grub-core/commands/parttool.c: Likewise.
15727
	* grub-core/commands/time.c: Likewise.
15728
	* grub-core/commands/videoinfo.c: Likewise.
15729
	* grub-core/disk/geli.c: Likewise.
15730
	* grub-core/disk/i386/pc/biosdisk.c: Likewise.
15731
	* grub-core/disk/luks.c: Likewise.
15732
	* grub-core/disk/lvm.c: Likewise.
15733
	* grub-core/font/font_cmd.c: Likewise.
15734
	* grub-core/fs/zfs/zfscrypt.c: Likewise.
15735
	* grub-core/fs/zfs/zfsinfo.c: Likewise.
15736
	* grub-core/gfxmenu/view.c: Likewise.
15737
	* grub-core/kern/emu/hostdisk.c: Likewise.
15738
	* grub-core/kern/emu/main.c: Likewise.
15739
	* grub-core/kern/emu/misc.c: Likewise.
15740
	* grub-core/kern/emu/mm.c: Likewise.
15741
	* grub-core/kern/mips/arc/init.c: Likewise.
15742
	* grub-core/kern/mips/loongson/init.c: Likewise.
15743
	* grub-core/kern/partition.c: Likewise.
15744
	* grub-core/lib/i386/halt.c: Likewise.
15745
	* grub-core/lib/mips/arc/reboot.c: Likewise.
15746
	* grub-core/lib/mips/loongson/reboot.c: Likewise.
15747
	* grub-core/loader/i386/pc/chainloader.c: Likewise.
15748
	* grub-core/loader/i386/xnu.c: Likewise.
15749
	* grub-core/loader/multiboot.c: Likewise.
15750
	* grub-core/net/bootp.c: Likewise.
15751
	* grub-core/net/net.c: Likewise.
15752
	* grub-core/normal/term.c: Likewise.
15753
	* grub-core/partmap/bsdlabel.c: Likewise.
15754
	* grub-core/parttool/msdospart.c: Likewise.
15755
	* grub-core/term/gfxterm.c: Likewise.
15756
	* grub-core/term/terminfo.c: Likewise.
15757
	* grub-core/video/i386/pc/vbe.c: Likewise.
15758
	* util/grub-menulst2cfg.c: Likewise.
15759
	* util/grub-mkdevicemap.c: Likewise.
15760
	* util/grub-mklayout.c: Likewise.
15761
	* util/grub-mkrelpath.c: Likewise.
15762
	* util/grub-script-check.c: Likewise.
15763
	* util/ieee1275/grub-ofpathname.c: Likewise.
15764
	* util/resolve.c: Likewise.
15765
15766
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15767
15768
	Support %1$d syntax.
15769
15770
	* tests/printf_unit_test.c: New file.
15771
	* Makefile.util.def (printf_test): New test.
15772
	* grub-core/kern/misc.c (grub_vsnprintf_real): Support %1$d syntax.
15773
15774
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15775
15776
	* grub-core/hook/datehook.c (grub_read_hook_datetime): Small stylistic
15777
	fix.
15778
15779
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15780
15781
	* grub-core/efiemu/mm.c (grub_efiemu_mmap_fill): Change printf into
15782
	dprintf.
15783
	* grub-core/font/font.c (grub_font_load): Likewise.
15784
15785
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15786
15787
	* util/grub-macho2img.c: Add comment concerning gettext.
15788
	* grub-core/lib/legacy_parse.c: Likewise.
15789
15790
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15791
15792
	* grub-core/kern/misc.c (grub_vprintf): Add missing va_end.
15793
	(grub_xvasprintf): Likewise.
15794
15795
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15796
15797
	Add const keyword to grub_env_get and gettextize week days.
15798
15799
	* grub-core/hook/datehook.c (grub_datetime_names): Make const.
15800
	(grub_read_hook_datetime): Return const char *.
15801
	* grub-core/kern/env.c (grub_env_get): Return const char *. All users
15802
	updated.
15803
	* grub-core/normal/datetime.c (grub_weekday_names): Make const.
15804
	Mark for gettext.
15805
	(grub_get_weekday_name): Return const char *. Call gettext.
15806
	* grub-core/script/argv.c (grub_script_argv_append): Receive const
15807
	char * and len as the argument. All users updated.
15808
	(grub_script_argv_split_append): Receive const char *.
15809
	* include/grub/datetime.h (grub_get_weekday_name): Update proto.
15810
	* include/grub/env.h (grub_env_get): Likewise.
15811
	(grub_env_read_hook_t): Return const char *.
15812
	* include/grub/script_sh.h (grub_script_argv_append): Update proto.
15813
	(grub_script_argv_split_append): Likewise.
15814
15815
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15816
15817
	* grub-core/normal/main.c (grub_normal_execute): Remove leftover call.
15818
15819
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15820
15821
	* grub-core/kern/misc.c (grub_strstr): Moved from here ...
15822
	* include/grub/misc.h (grub_strstr): ... here. Make static and inline.
15823
15824
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15825
15826
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_set_property):
15827
	Fix prototype.
15828
15829
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15830
15831
	Fix mips compilation.
15832
15833
	* grub-core/lib/xzembed/xz_dec_stream.c (xz_dec): Restrict hash_id to
15834
	normal decoder.
15835
	(hashes): Use in embed decoder as well (for sizes).
15836
	(dec_stream_header): Fix embed decompressor logic.
15837
	(dec_stream_footer): Likewise.
15838
15839
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15840
15841
	* grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Issue
15842
	an error and not a fatal on unrecognised relocation types.
15843
15844
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15845
15846
	* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args):
15847
	Issue error rather than printf on unknown arguments.
15848
15849
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15850
15851
	* grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_set_property):
15852
	Make buf a const.
15853
15854
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15855
15856
	* grub-core/fs/zfs/zfscrypt.c (GRUB_MOD_INIT), (GRUB_MOD_FINI):
15857
	Fix module name.
15858
15859
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15860
15861
	* grub-core/fs/ntfs.c (grub_ntfs_read_symlink): Stylistic fix. Remove
15862
	leftover debug printf.
15863
15864
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15865
15866
	* grub-core/fs/btrfs.c (grub_btrfs_embed): Spelling fix.
15867
15868
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15869
15870
	* grub-core/efiemu/main.c (grub_efiemu_register_configuration_table):
15871
	A stylistic fix.
15872
15873
2011-11-11  Vladimir Serbinenko  <phcoder@gmail.com>
15874
15875
	* grub-core/commands/probe.c (grub_cmd_probe): Fix error message.
15876
15877
2011-11-10  Shea Levy  <slevy@tieronedesign.com>
15878
15879
	Allow all modules to perform serial IO
15880
15881
	* grub-core/term-serial.c (grub_serial_find): Remove static qualifier
15882
	* include/grub/serial.h (grub_serial_port_configure): New inline
15883
	function.
15884
	(grub_serial_port_fetch): Likewise.
15885
	(grub_serial_port_put): Likewise.
15886
	(grub_serial_port_fini): Likewise.
15887
	(grub_serial_find): New proto.
15888
15889
2011-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
15890
15891
	Put symlink at the end of the node and fix a potential
15892
	memory corruption.
15893
15894
	* grub-core/fs/iso9660.c (grub_fshelp_node): New field have_symlink.
15895
	Make symlink into an array.
15896
	(set_rockridge): Set have_symlink and alloc_dirents.
15897
	(grub_iso9660_read_symlink): Use new layout.
15898
	(grub_iso9660_iterate_dir): Fix memory corruption.
15899
	Use new layout.
15900
	(grub_iso9660_dir): Set have_symlink.
15901
	(grub_iso9660_open): Likewise.
15902
15903
2011-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
15904
15905
	Remove local keyword.
15906
15907
	* util/grub-mkconfig_lib.in (version_test_numeric): Remove local.
15908
	(version_test_gt): Likewise.
15909
	(version_find_latest): Likewise.
15910
	(gettext_printf): Likewise.
15911
	* util/grub.d/10_windows.in (get_os_name_from_boot_ini): Likewise.
15912
15913
2011-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
15914
15915
	* grub-core/fs/zfs/zfs.c (zfs_mount): Fix spurious warning.
15916
15917
2011-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
15918
15919
	Fix ZFS memory and resource leaks.
15920
15921
	* grub-core/fs/zfs/zfs.c (fill_vdev_info_real): New paramter inserted.
15922
	All users updated.
15923
	Free type on exit.
15924
	(fill_vdev_info): New parameter inserted. All users updated.
15925
	(check_pool_label): Likewise.
15926
	(scan_disk): Likewise.
15927
	(scan_devices): Close non-inserted disks.
15928
	(fzap_iterate): Free l.
15929
	(unmount_device): Free children descripto memory.
15930
15931
2011-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
15932
15933
	* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Fix grub_strncat
15934
	argument (access out of bounds).
15935
15936
2011-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
15937
15938
	* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Fix RAID10 logic for
15939
	>= 6 drives.
15940
15941
2011-11-10  Vladimir Serbinenko  <phcoder@gmail.com>
15942
15943
	* include/grub/i386/netbsd_bootinfo.h (grub_netbsd_btinfo_bootwedge):
15944
	Fix declaration.
15945
15946
2011-11-09  Vladimir Serbinenko  <phcoder@gmail.com>
15947
15948
	Fix several memory leaks.
15949
15950
	* grub-core/fs/btrfs.c (grub_btrfs_dir): Fix memory leak.
15951
	* grub-core/fs/cpio.c (grub_cpio_find_file): Likewise.
15952
	(grub_cpio_dir): Likewise.
15953
	* grub-core/fs/fat.c (grub_fat_label): Likewise.
15954
	* grub-core/fs/jfs.c (grub_jfs_label): Likewise.
15955
	* grub-core/fs/romfs.c (grub_romfs_close): Likewise.
15956
	(grub_romfs_label): Likewise.
15957
	* grub-core/fs/squash4.c (squash_mount): Use zalloc for safety.
15958
	(squash_unmount): New function.
15959
	(grub_squash_dir): Fix memory leak.
15960
	(grub_squash_open): Likewise.
15961
	(grub_squash_read): Likewise.
15962
	(grub_squash_mtime): Likewise.
15963
	* grub-core/fs/xfs.c (grub_xfs_open): Likewise.
15964
	* grub-core/fs/zfs/zfs.c (check_pool_label): Likewise.
15965
	* util/grub-fstest.c (fstest): Likewise.
15966
15967
2011-11-09  Vladimir Serbinenko  <phcoder@gmail.com>
15968
15969
	* include/grub/misc.h (grub_strncat): Fix the order of conditionals to
15970
	avoid accessing beyond the array.
15971
15972
2011-11-09  Vladimir Serbinenko  <phcoder@gmail.com>
15973
15974
	* configure.ac: Add missing -mXX to TARGET_CPPFLAGS.
15975
15976
2011-11-09  Vladimir Serbinenko  <phcoder@gmail.com>
15977
15978
	Several AFFS fixes.
15979
15980
	* grub-core/fs/affs.c (grub_affs_bblock): Replace flags with version.
15981
	(GRUB_AFFS_FLAG_FFS): Removed.
15982
	(GRUB_AFFS_SYMLINK_SIZE): Likewise.
15983
	(GRUB_AFFS_FILETYPE_DIR): Make positive and unsigned.
15984
	(GRUB_AFFS_FILETYPE_DIR), (GRUB_AFFS_FILETYPE_REG): Fix a mix-up.
15985
	(grub_fshelp_node): Make block 32-bit.
15986
	Add block_cache and last_block_cache.
15987
	(grub_affs_read_block): Fill and use block cache.
15988
	(grub_affs_read_file): Removed.
15989
	(grub_affs_mount): Zero-fill node. Fix version check. Don't reread
15990
	boot block.
15991
	(grub_affs_read_symlink): Fix symlink size. Add a \0 at the end for
15992
	safety.
15993
	(grub_affs_iterate_dir): Use more appropriate types. Zero-fill allocated
15994
	space.
15995
	(grub_affs_close): Free block cache.
15996
	(grub_affs_read): Use grub_fshelp_read_file directly.
15997
15998
2011-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
15999
16000
	* grub-core/fs/zfs/zfs.c (read_dva): Issue an error if read failed
16001
	with no error set.
16002
16003
2011-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
16004
16005
	* grub-core/lib/LzmaEnc.c (LzmaEnc_CodeOneBlock): Remove set but not
16006
	used variable.
16007
	* grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size):
16008
	Likewise.
16009
16010
2011-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
16011
16012
	Fix potential problem with calling zfs_to_cpu and cpu_to_be in a row.
16013
16014
	* grub-core/fs/zfs/zfscrypt.c (grub_zfs_decrypt_real): Use explicit
16015
	byteswap when needed.
16016
16017
2011-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
16018
16019
	Fix FreeBSD compilation.
16020
16021
	* grub-core/disk/geli.c (GRUB_MD_SHA256) [GRUB_UTIL]: Redefine in a way
16022
	to avoid circular dependency.
16023
	(GRUB_MD_SHA512) [GRUB_UTIL]: Likewise.
16024
	* util/getroot.c (grub_util_follow_gpart_up): Move from here...
16025
	* grub-core/kern/emu/hostdisk.c (+grub_util_follow_gpart_up): ... here.
16026
16027
2011-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
16028
16029
	Fix ZFS crypto error types.
16030
16031
	* grub-core/fs/zfs/zfscrypt.c (grub_ccm_decrypt): Fix return type.
16032
	(grub_gcm_decrypt): Likewise.
16033
	(grub_zfs_load_key_real): Fix error code type. Handle possible error
16034
	from PBKDF2.
16035
16036
2011-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
16037
16038
	Illumos support.
16039
16040
	* Makefile.util.def (10_illumos): New script.
16041
	* configure.ac: Set COND_HOST_ILLUMOS.
16042
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__sun__]:
16043
	Support Illumos calls.
16044
	(find_partition_start) [__sun__]: Likewise.
16045
	(convert_system_partition_to_system_disk) [__sun__]: Likewise.
16046
	(device_is_wholedisk) [__sun__]: Handle Illumos naming scheme.
16047
	(grub_util_biosdisk_get_grub_dev) [__sun__]: Handle Illumos.
16048
	* util/getroot.c (find_root_device_from_libzfs) [__sun__]: Return raw
16049
	device.
16050
	* util/grub-probe.c (probe) [__sun__]: Do character check.
16051
	* util/grub.d/10_illumos.in: New file.
16052
16053
2011-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
16054
16055
	Support escaped commas in hostdisk.
16056
16057
	* grub-core/kern/emu/hostdisk.c (unescape_cmp): New function.
16058
	(find_grub_drive): Use unescape_cmp.
16059
	(make_device_name): Escape commas.
16060
16061
2011-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
16062
16063
	* util/grub.d/10_kfreebsd.in: Use ${grub_mkrelpath} not grub-mkrelpath.
16064
16065
2011-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
16066
16067
	* grub-core/fs/zfs/zfs.c (zap_iterate): Remove set but not used
16068
	variable.
16069
16070
2011-11-08  Vladimir Serbinenko  <phcoder@gmail.com>
16071
16072
	Support trampoline jumps on powerpc.
16073
16074
	* grub-core/kern/dl.c (grub_dl_load_segments) [__powerpc__]: Follow
16075
	__ia64__ path.
16076
	(grub_dl_load_segments): Set mod->sz.
16077
	(grub_dl_flush_cache): Flush whole space occupied by module, not just
16078
	segments.
16079
	* grub-core/kern/ia64/dl.c (nopm): Make const while on it.
16080
	(jump): Likewise.
16081
	* grub-core/kern/powerpc/dl.c (grub_arch_dl_get_tramp_got_size): New
16082
	function.
16083
	(trampoline): New struct.
16084
	(trampoline_template): New const.
16085
	(grub_arch_dl_relocate_symbols): Create trampolines on overflow.
16086
	* include/grub/dl.h (grub_dl): Add sz element.
16087
	[__powerpc__]: Follow __ia64__.
16088
	(GRUB_ARCH_DL_TRAMP_ALIGN): Define on ppc.
16089
	(GRUB_ARCH_DL_GOT_ALIGN): Likewise.
16090
	(GRUB_ARCH_DL_TRAMP_SIZE): Likewise.
16091
	(grub_arch_dl_get_tramp_got_size) [__powerpc__]: New proto.
16092
16093
2011-11-06  Vladimir Serbinenko  <phcoder@gmail.com>
16094
16095
	ZFS crypto support.
16096
16097
	* Makefile.util.def (libgrubmods): Add grub-core/fs/zfs/zfscrypt.c.
16098
	* grub-core/Makefile.core.def (zfscrypt): New module.
16099
	* grub-core/fs/zfs/zfs.c (subvolume): New structure.
16100
	(grub_zfs_data): Replace mdn with subvol. Put case_insensitivity inside
16101
	it. All users updated.
16102
	(grub_zfs_decrypt): New var.
16103
	(grub_zfs_load_key): Likewise.
16104
	(zio_checksum_functions): Add SHA256+MAC.
16105
	(zio_checksum_verify): Handle incomplete comparison due to MAC.
16106
	(zio_read): Handle encrypted blocks.
16107
	(zap_verify): Remove incorrect check.
16108
	(fzap_iterate): Handle non-standard fzap.
16109
	(zap_iterate): Likewise.
16110
	(zap_iterate_u64): New function.
16111
	(dnode_get_fullpath): Load keys.
16112
	* grub-core/fs/zfs/zfscrypt.c: New file.
16113
	* grub-core/lib/crypto.c (grub_crypto_cipher_close): Removed.
16114
	(grub_crypto_ecb_encrypt): Make input const.
16115
	* include/grub/crypto.h (grub_crypto_cipher_close): Inline.
16116
	(grub_crypto_ecb_encrypt): Make input const.
16117
	(GRUB_CIPHER_AES): New macro.
16118
	* include/grub/zfs/dmu.h (dmu_object_type): Add DMU_OT_DSL_KEYCHAIN.
16119
	* include/grub/zfs/dsl_dir.h (dsl_dir_phys): Add keychain.
16120
	* include/grub/zfs/spa.h (grub_zfs_endian): Moved from here ...
16121
	* include/grub/zfs/zfs.h (grub_zfs_endian): ... here. Added GURB_ZFS_
16122
	prefix. All users updated.
16123
	(grub_zfs_add_key): New proto.
16124
	(grub_zfs_decrypt): Likewise.
16125
	(grub_zfs_load_key): Likewise.
16126
	* include/grub/zfs/zio.h (zio_checksum): Add SHA256+MAC.
16127
	* util/grub-fstest.c (options): Add -K option.
16128
	(argp_parser): Likewise.
16129
16130
2011-11-05  Vladimir Serbinenko  <phcoder@gmail.com>
16131
16132
	Support zle compression on ZFS.
16133
16134
	* grub-core/fs/zfs/zfs.c (zle_decompress): New function.
16135
	(decomp_table): Add zle.
16136
	* include/grub/zfs/zio.h (zio_compress): Add zle.
16137
16138
2011-11-05  Vladimir Serbinenko  <phcoder@gmail.com>
16139
16140
	Support BtrFS embedding.
16141
16142
	* grub-core/fs/btrfs.c (grub_btrfs_embed) [GRUB_UTIL]: New function.
16143
	(grub_btrfs_fs) [GRUB_UTIL]: Set embed.
16144
	* include/grub/fs.h (grub_fs) [GRUB_UTIL]: New field embed.
16145
	* util/grub-setup.c (setup): Use fs embedding if available.
16146
	Add additional sanity check.
16147
16148
2011-11-05  Vladimir Serbinenko  <phcoder@gmail.com>
16149
16150
	* util/grub-install.in: Fix condition for config_opt.
16151
16152
2011-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
16153
16154
	Support third redundancy strip on raidz3.
16155
16156
	* grub-core/fs/zfs/zfs.c (recovery): Add Gauss for general case.
16157
	Return error on singularity. All users updated.
16158
	(read_device): Don't stop on 3rd failure on raidz3.
16159
16160
2011-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
16161
16162
	Support case-insensitive ZFS subvolumes.
16163
16164
	* grub-core/fs/zfs/zfs.c (mzap_lookup): New parameter case_insensitive.
16165
	All users updated.
16166
	(zap_hash): Likewise.
16167
	(name_cmp): New function.
16168
	(zap_leaf_array_equal): New parameter case_insensitive.
16169
	All users updated.
16170
	(zap_leaf_lookup): Likewise.
16171
	(fzap_lookup): Likewise.
16172
	(zap_lookup): Likewise.
16173
	(dnode_get_path): New parameter case_insensitive. Retrieve case
16174
	sensitiviness of a volume. All users updated.
16175
	(dnode_get_fullpath): New parameter case_insensitive.
16176
	All users updated.
16177
	(grub_zfs_dir): Set info.case_insensitiveness.
16178
16179
2011-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
16180
16181
	Support second redundancy strip on raidz(2,3).
16182
16183
	* grub-core/fs/zfs/zfs.c (powx): New array.
16184
	(powx_inv): Likewise.
16185
	(poly): New const.
16186
	(xor_out): New function.
16187
	(gf_mul): Likewise.
16188
	(recovery): Likewise.
16189
	(read_device): Use second redundancy strip.
16190
16191
2011-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
16192
16193
	Use a power of generator representation of GF(256) multiplication group
16194
	to save space time and complexity.
16195
16196
	* grub-core/disk/raid6_recover.c (raid6_table1): Removed.
16197
	(raid6_table2): Likewise.
16198
	(powx): New array.
16199
	(powx_inv): Likewise.
16200
	(poly): New const.
16201
	(grub_raid_block_mul): Replace with ...
16202
	(grub_raid_block_mulx): ...this.
16203
	(grub_raid6_init_table): Rewritten.
16204
	(grub_raid6_recover): Use power of generator representation.
16205
16206
2011-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
16207
16208
	* grub-core/disk/raid6_recover.c (grub_raid6_recover): Get start_sector
16209
	for the right device.
16210
16211
2011-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
16212
16213
	* include/grub/kernel.h (grub_module_header): Make type into uint32 as
16214
	expected by grub-mkimage and it's more clear since there is no implicit
16215
	padding.
16216
16217
2011-11-04  Vladimir Serbinenko  <phcoder@gmail.com>
16218
16219
	* grub-core/disk/raid.c (scan_devices): Don't derference NULL on whole
16220
	disk.
16221
	* grub-core/disk/lvm.c (do_lvm_scan): Likewise.
16222
16223
2011-11-03  Philipp Matthias Hahn <pmhahn@debian.org>
16224
16225
	* util/grub-mkrescue.in: Fix handling xorriso option.
16226
16227
2011-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
16228
16229
	* grub-core/gettext/gettext.c (grub_gettext_init_ext): Exit if local is
16230
	NULL.
16231
16232
2011-11-03  crocket <crockabiscuit@gmail.com>
16233
16234
	* util/grub.d/10_linux.in: Add Slackware initrd naming.
16235
16236
2011-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
16237
16238
	XZ CRC64 and SHA256 support.
16239
16240
	* Makefile.util.def (libgrubmods): Add crc64.c.
16241
	* grub-core/Makefile.core.def (crc64): New module.
16242
	* grub-core/lib/crc64.c: New file.
16243
	* grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_hash)
16244
	[!GRUB_EMBED_DECOMPRESSOR]: Rename crc32_context to hash_context.
16245
	Fix the type.
16246
	(MAX_HASH_SIZE): New define.
16247
	(xz_dec) [!GRUB_EMBED_DECOMPRESSOR]: Add generic hash fields.
16248
	(dec_block) [!GRUB_EMBED_DECOMPRESSOR]: Handle non-crc32 hashes.
16249
	(index_update) [!GRUB_EMBED_DECOMPRESSOR]: Likewise.
16250
	(dec_index) [!GRUB_EMBED_DECOMPRESSOR]: Likewise.
16251
	(crc32_validate) [!GRUB_EMBED_DECOMPRESSOR]: Rename to ...
16252
	(hash_validate) [!GRUB_EMBED_DECOMPRESSOR]: ... this.
16253
	Handle non-crc32 hashes.
16254
	(hashes) [!GRUB_EMBED_DECOMPRESSOR]: New variable.
16255
	(dec_stream_header): Handle non-crc32 hashes.
16256
	(dec_stream_footer): Likewise.
16257
	(dec_block_header): Likewise.
16258
	(dec_main): Likewise.
16259
	(xz_dec_init): Likewise.
16260
	(xz_dec_reset): Likewise.
16261
	(xz_dec_end): Likewise.
16262
	* util/import_gcry.py: Add CRC64 line.
16263
16264
2011-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
16265
16266
	* grub-core/fs/ufs.c (grub_ufs_mtime) [MODE_UFS2]: Check mtime field
16267
	as well.
16268
16269
2011-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
16270
16271
	Make reiserfs label retrieval similar to other *_label functions.
16272
16273
	* grub-core/fs/reiserfs.c (grub_reiserfs_superblock): New field label.
16274
	(REISERFS_MAX_LABEL_LENGTH): Removed.
16275
	(REISERFS_LABEL_OFFSET): Likewise.
16276
	(grub_reiserfs_label): Rewritten.
16277
16278
2011-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
16279
16280
	* grub-core/fs/nilfs2.c (grub_nilfs2_mtime): Use correct superblock
16281
	field.
16282
16283
2011-11-03  Vladimir Serbinenko  <phcoder@gmail.com>
16284
16285
	* grub-core/fs/zfs/zfs.c (read_device): Support raidz3.
16286
16287
2011-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
16288
16289
	* grub-core/fs/zfs/zfs.c (read_device): Add ability to sustain a single
16290
	drive failure on both raidz and raidz2.
16291
16292
2011-11-02  Vladimir Serbinenko  <phcoder@gmail.com>
16293
16294
	Fix RAIDZ(2) for >= 5 devices.
16295
16296
	* grub-core/fs/zfs/zfs.c (read_device): Fix length formula. Remove
16297
	asize argument. All users updated.
16298
16299
2011-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
16300
16301
	Fix RAIDZ(2).
16302
16303
	* grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New member ashift.
16304
	(fill_vdev_info_real): Set ashift.
16305
	(read_device): Rewrite RAIDZ part based on reverse engineering.
16306
16307
2011-10-31  Vladimir Serbinenko  <phcoder@gmail.com>
16308
16309
	* grub-core/fs/btrfs.c (grub_btrfs_extent_read): Add sanity check and
16310
	don't report potentially unavialiable fields in debug output.
16311
	(find_path): Fix double-free and memory leak.
16312
16313
2011-10-31  Vladimir Serbinenko  <phcoder@gmail.com>
16314
16315
	Read label on UFS1.
16316
16317
	* grub-core/fs/ufs.c (grub_ufs_label): Remove MODE_UFS2 condition.
16318
	(grub_ufs_fs): Always set .label.
16319
16320
2011-10-31  Vladimir Serbinenko  <phcoder@gmail.com>
16321
16322
	Use shifts in UFS.
16323
16324
	* grub-core/fs/ufs.c (UFS_LOG_BLKSZ): New macro.
16325
	(grub_ufs_data): New field log2_blksz.
16326
	(grub_ufs_read_file): Use shifts.
16327
	(grub_ufs_mount): Check block size and logarithm it.
16328
16329
2011-10-31  Vladimir Serbinenko  <phcoder@gmail.com>
16330
16331
	* grub-core/fs/ufs.c (grub_ufs_lookup_symlink): Fix handling of
16332
	long symlinks.
16333
16334
2011-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
16335
16336
	Handle symlinks and long names on tar and cpio.
16337
16338
	* grub-core/fs/cpio.c (ATTR_TYPE): New definition.
16339
	(ATTR_FILE): Likewise.
16340
	(ATTR_DIR): Likewise.
16341
	(ATTR_LNK): Likewise.
16342
	(grub_cpio_data) [MODE_USTAR]: New fields linkname and linkname_alloc.
16343
	(grub_cpio_find_file): Fill mode, handle linkname field as well as
16344
	L and K entries.
16345
	(grub_cpio_mount): Zero-fill data.
16346
	(handle_symlink): New function.
16347
	(grub_cpio_dir): Handle symlinks.
16348
	(grub_cpio_open): Likewise.
16349
	(grub_cpio_close) [MODE_USTAR]: Free linkname.
16350
16351
2011-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
16352
16353
	Fix iso9660 filename limitations and fix memory leaks.
16354
16355
	* grub-core/fs/iso9660.c (set_rockridge): Free sua at the end.
16356
	(grub_iso9660_iterate_dir): Fix slash handling in symlinks.
16357
16358
2011-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
16359
16360
	Fix JFS file name length limitations.
16361
16362
	* grub-core/fs/jfs.c (grub_jfs_inode): Fix in-place symlink length.
16363
	(grub_jfs_diropen): Fix maximum filename length.
16364
	(grub_jfs_getent): Fix filename length.
16365
	(grub_jfs_lookup_symlink): Fix size checks.
16366
16367
2011-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
16368
16369
	* grub-core/loader/mips/linux.c (loongson_machtypes): Fix fuloong type
16370
	string.
16371
16372
2011-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
16373
16374
	Leverage BFS implementation to read AFS.
16375
16376
	* Makefile.util.def (libgrubmods): Add afs.c.
16377
	* grub-core/Makefile.core.def (afs): New module
16378
	* grub-core/fs/afs.c: New file.
16379
	* grub-core/fs/bfs.c [MODE_AFS]: Adapt for AFS.
16380
16381
2011-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
16382
16383
	* grub-core/fs/bfs.c: Macroify and add some necessary sanity checks.
16384
16385
2011-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
16386
16387
	* grub-core/fs/bfs.c: Run indent.
16388
16389
2011-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
16390
16391
	BFS implementation based on the specification.
16392
16393
	* grub-core/fs/bfs.c: New file.
16394
	* Makefile.util.def (libgrubmods): Add bfs.c.
16395
	* grub-core/Makefile.core.def (bfs): New module.
16396
16397
2011-10-30  Vladimir Serbinenko  <phcoder@gmail.com>
16398
16399
	* util/grub-fstest.c (cmd_cp): Clarify error message.
16400
	(cmd_cmp): Likewise.
16401
16402
2011-10-30  Yves Blusseau  <blusseau@zetam.org>
16403
16404
	* po/POTFILES.in: Regenerate because of the removal of afs, afs_be, befs
16405
	and befs_be.
16406
16407
2011-10-29  Vladimir Serbinenko  <phcoder@gmail.com>
16408
16409
	Remove afs and befs because of copyright problem.
16410
16411
	* grub-core/fs/afs.c: Removed.
16412
	* grub-core/fs/afs_be.c: Removed.
16413
	* grub-core/fs/befs.c: Removed.
16414
	* grub-core/fs/befs_be.c: Removed.
16415
	* Makefile.util.def (libgrubkern): Remove afs, afs_be, befs and befs_be.
16416
	* grub-core/Makefile.core.def (afs): Removed.
16417
	(afs_be): Likewise.
16418
	(befs): Likewise.
16419
	(befs_be): Likewise.
16420
16421
2011-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
16422
16423
	Prefer rockridge over Joliet.
16424
16425
	* grub-core/fs/iso9660.c (grub_iso9660_mount): Move rockridge detection
16426
	to ...
16427
	(set_rockridge): ... here.
16428
	(grub_iso9660_mount): Check rockridge on the primary label when
16429
	discovering. Ignore Joliet if Rockridge is present.
16430
16431
2011-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
16432
16433
	Use shifts in nilfs2.
16434
16435
	* grub-core/fs/nilfs2.c (LOG_INODE_SIZE): New definition.
16436
	(LOG_NILFS_DAT_ENTRY_SIZE): Likewise.
16437
	(grub_nilfs2_palloc_entries_per_group): Replace with ...
16438
	(grub_nilfs2_log_palloc_entries_per_group): ... this.
16439
	(grub_nilfs2_palloc_group): Use shifts and bitmasks.
16440
	(grub_nilfs2_entries_per_block): Replaced with ...
16441
	(grub_nilfs2_log_entries_per_block_log): ... this.
16442
	(grub_nilfs2_blocks_per_group): Replaced with ...
16443
	(grub_nilfs2_blocks_per_group_log): ... this.
16444
	(grub_nilfs2_blocks_per_desc_block): Replaced with ...
16445
	(grub_nilfs2_blocks_per_desc_block_log): ... this.
16446
	(grub_nilfs2_palloc_desc_block_offset): Replaced with ...
16447
	(grub_nilfs2_palloc_desc_block_offset_log): ... this.
16448
	(grub_nilfs2_palloc_entry_offset): Replaced ...
16449
	(grub_nilfs2_palloc_entry_offset_log): ... this. Use shifts.
16450
	(grub_nilfs2_dat_translate): Use shifts.
16451
	(grub_nilfs2_read_inode): Likewise.
16452
	(GRUB_MOD_INIT): Ensure that logs are correct.
16453
16454
2011-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
16455
16456
	Use shifts in minix filesystem.
16457
16458
	* grub-core/fs/minix.c (GRUB_MINIX_ZONESZ): Use log_block_size.
16459
	(GRUB_MINIX_ZONE2SECT): Likewise.
16460
	(grub_minix_data): Replace block_size with log_block_size.
16461
	(grub_minix_read_file): Use shifts.
16462
	(grub_minix_mount): Check block size and take a logarithm.
16463
16464
2011-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
16465
16466
	Use shifts in squash4.
16467
16468
	* grub-core/fs/squash4.c (grub_squash_data): New field log2_blksz.
16469
	(squash_mount): Check block size and take logarithm.
16470
	(direct_read): Use shifts.
16471
16472
2011-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
16473
16474
	Correct befs block counting logic.
16475
16476
	* grub-core/fs/afs.c (GRUB_AFS_BLOCKS_PER_DI_RUN): Replaced with...
16477
	(GRUB_AFS_LOG_BLOCKS_PER_DI_RUN): ... this.
16478
	(GRUB_AFS_BLOCKRUN_LOG_SIZE): New definition.
16479
	(grub_afs_read_inode): Use block_shift.
16480
	(RANGE_SHIFT): New definition.
16481
	(grub_afs_read_block): Account for RANGE_SHIFT, emit errors on
16482
	unexpected conditions, use shifts and appropriate types.
16483
	(GRUB_MOD_INIT): Check the value of GRUB_AFS_BLOCKRUN_LOG_SIZE.
16484
16485
2011-10-28  Vladimir Serbinenko  <phcoder@gmail.com>
16486
16487
	* grub-core/disk/raid.c (scan_devices): Check partition.
16488
	* grub-core/disk/lvm.c (do_lvm_scan): Likewise.
16489
16490
2011-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
16491
16492
	Support BFS (befs) UUID.
16493
16494
	* grub-core/fs/afs.c (grub_afs_inode): Make small_data zero-size.
16495
	(grub_afs_small_data_element_header): New struct.
16496
	(grub_afs_read_inode): Read complete inode. Fix ino type while on it.
16497
	(grub_afs_read_attribute) [MODE_BFS]: New function.
16498
	(grub_afs_iterate_dir): Allocate for complete inode.
16499
	(grub_afs_mount): Likewise.
16500
	(grub_afs_uuid) [MODE_BFS]: New function.
16501
	(grub_afs_fs) [MODE_BFS]: Add .uuid.
16502
16503
2011-10-27  Vladimir Serbinenko  <phcoder@gmail.com>
16504
16505
	* grub-core/fs/zfs/zfs.c (read_device): Silence spurious warning.
16506
	(zfs_unmount): Fix memory leak.
16507
16508
2011-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
16509
16510
	Support NTFS reparse points.
16511
16512
	* grub-core/fs/ntfs.c (list_file): Set symlink type when appropriate.
16513
	(symlink_descriptor): New struct.
16514
	(grub_ntfs_read_symlink): New function.
16515
	(grub_ntfs_iterate_dir): Use grub_ntfs_read_symlink.
16516
	(grub_ntfs_open): Likewise.
16517
16518
2011-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
16519
16520
	* include/grub/ntfs.h: Add GRUB_NTFS_ prefix. All users updated.
16521
16522
2011-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
16523
16524
	fstest xnu_uuid subcommand.
16525
16526
	* grub-core/commands/xnu_uuid.c (libgrubkrn): Add
16527
	grub-core/commands/xnu_uuid.c.
16528
	* util/grub-fstest.c (CMD_XNU_UUID): New enum value.
16529
	(fstest): Handle xnu_uuid.
16530
	(options): Document xnu_uuid.
16531
	(argp_parser): Parse xnu_uuid.
16532
16533
2011-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
16534
16535
	* grub-core/commands/xnu_uuid.c (grub_cmd_xnu_uuid): Support
16536
	-l argument. Add newline at the end if printing.
16537
	(GRUB_MOD_INIT): Document -l.
16538
16539
2011-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
16540
16541
	* grub-core/fs/nilfs2.c (grub_nilfs2_uuid): Add missing field length.
16542
16543
2011-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
16544
16545
	ZFS multi-device and version 33 support.
16546
16547
	* Makefile.util.def (libgrubkern): Add grub-core/fs/zfs/zfsinfo.c.
16548
	* grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New struct.
16549
	(grub_zfs_data): Add multidev-ice-related fields.
16550
	(zio_checksum_verify): Zero-pad printed values. Print checksum name.
16551
	(dva_get_offset): Make dva const.
16552
	(zfs_fetch_nvlist): New function.
16553
	(fill_vdev_info_real): Likewise.
16554
	(fill_vdev_info): Likewise.
16555
	(check_pool_label): Likewise.
16556
	(scan_disk): Likewise.
16557
	(scan_devices): Likewise.
16558
	(read_device): Likewise.
16559
	(read_dva): Likewise.
16560
	(zio_read_gang): Use read_dva.
16561
	(zio_read_data): Likewise.
16562
	(zap_leaf_lookup): Add missing endian conversion.
16563
	(zap_verify): Add missing endian conversion. All users updated.
16564
	(fzap_lookup): Likewise.
16565
	(fzap_iterate): Likewise.
16566
	(dnode_get_path): Handle SA bonus.
16567
	(nvlist_find_value): Make input const. All users updated.
16568
	(unmount_device): New function.
16569
	(zfs_unmount): Use unmount_device.
16570
	(zfs_mount): Use scan_disk.
16571
	(zfs_mtime): New function.
16572
	(grub_zfs_open): Handle system attributes.
16573
	(fill_fs_info): Likewise.
16574
	(grub_zfs_dir): Likewise.
16575
	(grub_zfs_fs): Add mtime.
16576
	* grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Add missing return.
16577
	* include/grub/zfs/sa_impl.h (SA_TYPE_OFFSET): New definition.
16578
	(SA_MTIME_OFFSET): Likewise.
16579
	(SA_SYMLINK_OFFSET): Likewise.
16580
	* include/grub/zfs/zfs.h (SPA_VERSION): Increase to 33.
16581
	* util/grub-fstest.c (CMD_ZFSINFO): New enum value.
16582
	(fstest): Support zfsinfo.
16583
	(argp_parser): Likewise.
16584
16585
2011-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
16586
16587
	* include/grub/datetime.h (grub_datetime2unixtime): Fix off-by-one
16588
	error.
16589
16590
2011-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
16591
16592
	ZFS fixes.
16593
16594
	* grub-core/fs/zfs/zfs.c (fzap_iterate): Fix handling of indexes
16595
	sharing the same block. Iterate over correct number of indices.
16596
	(dnode_get_path): Handle symlinks correctly.
16597
16598
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16599
16600
	* grub-core/fs/jfs.c (grub_jfs_sblock): Fix offset to volname.
16601
16602
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16603
16604
	Read label on HFS+.
16605
16606
	* grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey_id): New function.
16607
	(grub_hfsplus_btree_search): Fix types.
16608
	(grub_hfsplus_label): Implement.
16609
16610
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16611
16612
	* grub-core/fs/ntfs.c (grub_ntfs_uuid): Fix a memory leak.
16613
16614
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16615
16616
	* grub-core/fs/fat.c (grub_fat_uuid): Make uppercase to match Linux.
16617
16618
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16619
16620
	Fix symlink handling on iso9660.
16621
16622
	* grub-core/fs/iso9660.c (grub_fshelp_node): Remove dir_off. Add symlink
16623
	All users updated.
16624
	(grub_iso9660_susp_iterate): Accept zero-size iterate.
16625
	(grub_iso9660_read_symlink): Moved most of code ...
16626
	(grub_iso9660_iterate_dir): ... here. Fill node->symlink.
16627
16628
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16629
16630
	* grub-core/loader/i386/bsd.c (grub_netbsd_add_boot_disk_and_wedge):
16631
	Use union to avoid breaking strict-aliasing rules.
16632
16633
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16634
16635
	Support multi-extent iso files.
16636
16637
	* grub-core/fs/iso9660.c (grub_iso9660_data): Remove first_sector.
16638
	Add node.
16639
	(grub_fshelp_node): Revamp. All users updated.
16640
	(FLAG_*): New enum.
16641
	(read_node): New function.
16642
	(grub_iso9660_susp_iterate): Use read_node. Receive a node as argument.
16643
	All users updated.
16644
	(grub_iso9660_mount): Don't attempt to read sua when there is none.
16645
	(get_node_size): New function.
16646
	(grub_iso9660_iterate_dir): Use read_node. Agglomerate multi-extent
16647
	entries.
16648
	Fix memory leak on . and ..
16649
	(grub_iso9660_read): Use read_node.
16650
	(grub_iso9660_close): Free node.
16651
16652
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16653
16654
	Fix tar 4G limit and handle paths containing dot.
16655
16656
	* grub-core/fs/cpio.c (grub_cpio_data): Use grub_off_t for offsets.
16657
	(canonicalize): New function.
16658
	(grub_cpio_find_file): Use canonicalize. Store offs in
16659
	grub_disk_addr_t.
16660
	(grub_cpio_dir): Use grub_disk_addr_t.
16661
	(grub_cpio_open): Likewise.
16662
16663
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16664
16665
	Fix handling of uncompressed blocks on squashfs and break 4G limit.
16666
16667
	* grub-core/fs/squash4.c (grub_squash_super): Add block_size. Remove
16668
	unused flags.
16669
	(grub_squash_inode): Add long_file and block_size.
16670
	(grub_squash_cache_inode): New struct.
16671
	(grub_squash_dirent): Make types into enum.
16672
	(SQUASH_TYPE_LONG_REGULAR): New type.
16673
	(grub_squash_frag_desc): Add field size.
16674
	(SQUASH_BLOCK_FLAGS): New enum.
16675
	(grub_squash_data): Use grub_squash_cache_inode.
16676
	(grub_fshelp_node): Make ino_chunk 64-bit.
16677
	(read_chunk): Minor argument change. All users updated.
16678
	(squash_mount): Use correct le_to_cpu.
16679
	(grub_squash_open): Handle LONG_REGULAR.
16680
	(direct_read): New function.
16681
	(grub_squash_read_data): Handle blocks correctly.
16682
16683
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16684
16685
	* grub-core/kern/disk.c (grub_disk_read_small): Fix memory leak.
16686
16687
2011-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
16688
16689
	* grub-core/fs/romfs.c (grub_romfs_open): Add missing return.
16690
16691
2011-10-24  Vladimir Serbinenko  <phcoder@gmail.com>
16692
16693
	Fix 2G limit on ZFS.
16694
16695
	* grub-core/fs/zfs/zfs.c (zio_checksum_verify): Use more appropriate
16696
	types.
16697
	(uberblock_verify): Likewise.
16698
	(dmu_read): Likewise.
16699
	(grub_zfs_read): Likewise. Remove invalid cast.
16700
16701
2011-10-24  Vladimir Serbinenko  <phcoder@gmail.com>
16702
16703
	* grub-core/fs/jfs.c (grub_jfs_blkno): Use more appropriate types.
16704
	(grub_jfs_blkno): Fix incorrect shift.
16705
	(grub_jfs_read_file): Use more appropriate types.
16706
16707
2011-10-24  Vladimir Serbinenko  <phcoder@gmail.com>
16708
16709
	Support triple indirect on minix2 and minix3.
16710
16711
	* grub-core/fs/minix.c (grub_minix_inode) [MODE_MINIX2 || MODE_MINIX3]:
16712
	Declare triple_indir_zone.
16713
	(grub_minix_get_file_block) [MODE_MINIX2 || MODE_MINIX3]: Handle triple
16714
	indirect.
16715
16716
2011-10-24  Vladimir Serbinenko  <phcoder@gmail.com>
16717
16718
	Minix FS fixes.
16719
16720
	* grub-core/fs/minix.c (GRUB_MINIX_INODE_SIZE): Size is always 32-bit.
16721
	(grub_minix_inode) [!MODE_MINIX2 && !MODE_MINIX3]: Make size 32-bit.
16722
	Rename ctime to mtime. All users updated.
16723
	(grub_minix_get_file_block): Fix types and double indirect computations.
16724
16725
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16726
16727
	* grub-core/fs/fat.c (grub_fat_label) [MODE_EXFAT]: Set *label to 0
16728
	if no label is found.
16729
	(grub_fat_iterate_dir): Fix file size type.
16730
	(grub_fat_iterate_dir): Likewise.
16731
16732
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16733
16734
	* grub-core/lib/reed_solomon.c (gf_invert): Declare as const and
16735
	save some space.
16736
	* include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): Decrease.
16737
	(GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise.
16738
16739
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16740
16741
	* util/import_gcry.py: Automatically fix camellia.c and camellia.h.
16742
16743
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16744
16745
	* util/import_gcry.py: Accept space between # and include.
16746
16747
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16748
16749
	* grub-core/lib/setjmp.S [__ia64__]: Include ./ia64/longjmp.S.
16750
16751
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16752
16753
	Fine grainely disable warnings on lexer. Remove Wno-error on it.
16754
16755
	* grub-core/Makefile.core.def (normal): Remove -Wno-error.
16756
	* grub-core/script/lexer.c: Declare yytext_ptr to avoid having
16757
	yylex_strncpy.
16758
	* grub-core/script/yylex.l: Add fine-grained #pragma.
16759
16760
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16761
16762
	* grub-core/lib/posix_wrap/string.h (memcpy) [GRUB_UTIL]:
16763
	New inline function.
16764
	* grub-core/lib/libgcrypt_wrap/cipher_wrap.h (memcpy) [GRUB_UTIL]:
16765
	Likewise.
16766
	(memset) [GRUB_UTIL]: Likewise.
16767
	(memcmp) [GRUB_UTIL]: Likewise.
16768
16769
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16770
16771
	* include/grub/misc.h (grub_memcpy): Declare grub_memcpy with static
16772
	inline function rather than a define.
16773
16774
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16775
16776
	* util/grub-setup.c: Add missing include.
16777
16778
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16779
16780
	* util/ieee1275/grub-ofpathname.c: Add missing include.
16781
16782
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16783
16784
	* grub-core/kern/i386/pc/startup.S (grub_exit): Add missing zeroing-out.
16785
	* grub-core/lib/i386/reboot_trampoline.S (grub_reboot_start):
16786
	Likewise.
16787
16788
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16789
16790
	* grub-core/io/lzopio.c (test_header): Fix incorrect memcmp instead of
16791
	grub_memcmp usage.
16792
16793
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16794
16795
	* util/grub-install.in: Add datarootdir as per automake manual
16796
	suggestion.
16797
	* util/grub-mknetdir.in: Likewise.
16798
16799
2011-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
16800
16801
	* util/grub.d/10_hurd.in: Add datarootdir as per automake manual
16802
	suggestion.
16803
	* util/grub.d/10_kfreebsd.in: Likewise.
16804
	* util/grub.d/10_linux.in: Likewise.
16805
	* util/grub.d/10_netbsd.in: Likewise.
16806
	* util/grub.d/10_windows.in: Likewise.
16807
	* util/grub.d/20_linux_xen.in: Likewise.
16808
16809
2011-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
16810
16811
	Remove redundant grub_kernel_image_size.
16812
16813
	* grub-core/kern/i386/coreboot/init.c (grub_machine_init): Use
16814
	_edata and _start.
16815
	* grub-core/kern/i386/coreboot/startup.S: Move multiboot header after
16816
	the small code. It moves it only by few bytes but simplifies the code.
16817
	* grub-core/kern/i386/pc/init.c (grub_machine_init): Use _edata and
16818
	_start.
16819
	* grub-core/kern/i386/pc/startup.S: Use _edata and _start.
16820
	(grub_kernel_image_size): Removed.
16821
	* grub-core/kern/i386/qemu/startup.S: Use _edata and _start.
16822
	(grub_kernel_image_size): Removed.
16823
	[APPLE_CC]: Remove apple compiler support. i386-qemu port can't be
16824
	compiled with Apple toolchain.
16825
	* grub-core/kern/sparc64/ieee1275/crt0.S: Remove leftover fields.
16826
	* include/grub/i386/pc/kernel.h (grub_kernel_image_size): Removed.
16827
	* include/grub/i386/qemu/kernel.h (grub_kernel_image_size): Removed.
16828
	(grub_total_module_size): Likewise.
16829
	* include/grub/offsets.h (GRUB_KERNEL_I386_PC_KERNEL_IMAGE_SIZE):
16830
	Removed.
16831
	(GRUB_KERNEL_I386_PC_COMPRESSED_SIZE): Put it lower.
16832
	(GRUB_KERNEL_I386_PC_INSTALL_DOS_PART): Likewise.
16833
	(GRUB_KERNEL_I386_PC_INSTALL_BSD_PART): Likewise.
16834
	(GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY): Likewise.
16835
	(GRUB_KERNEL_I386_QEMU_KERNEL_IMAGE_SIZE): Removed.
16836
	(GRUB_KERNEL_SPARC64_IEEE1275_KERNEL_IMAGE_SIZE): Likewise.
16837
	(GRUB_KERNEL_SPARC64_IEEE1275_COMPRESSED_SIZE): Likewise.
16838
	* include/grub/sparc64/ieee1275/kernel.h (grub_kernel_image_size):
16839
	Removed.
16840
	(grub_total_module_size): Removed.
16841
	* util/grub-mkimage.c (image_target_desc): Remove image_size.
16842
	(image_targets): Likewise.
16843
	Set .compressed_size to no field on sparc.
16844
	(generate_image): Remove kernel_image_size handling.
16845
16846
2011-10-19  Szymon Janc <szymon@janc.net.pl>
16847
16848
	* grub-core/bus/usb/uhci.c (grub_uhci_setup_transfer): Fix possible
16849
	NULL pointer dereference.
16850
16851
2011-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
16852
16853
	Removed unused GRUB_BOOT_VERSION. Check for kernel version is better
16854
	done with a dedicated section.
16855
16856
	* grub-core/boot/sparc64/ieee1275/boot.S: Remove GRUB_BOOT_VERSION.
16857
	Ensure the correct position of boot_path.
16858
	* grub-core/kern/i386/efi/startup.S: Remove GRUB_BOOT_VERSION.
16859
	* grub-core/kern/i386/pc/startup.S: Likewise. Ensure correct position of
16860
	other fields.
16861
	* grub-core/kern/x86_64/efi/startup.S: Remove GRUB_BOOT_VERSION.
16862
	* include/grub/boot.h: Removed. All references removed.
16863
	* include/grub/sparc64/ieee1275/boot.h (GRUB_BOOT_MACHINE_VER_MAJ):
16864
	Removed.
16865
	(GRUB_BOOT_MACHINE_BOOT_DEVPATH): Make it lower.
16866
16867
2011-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
16868
16869
	* util/grub-install.in: Declare IEEE1275 as able to find out the disk
16870
	name.
16871
16872
2011-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
16873
16874
	* grub-core/kern/main.c (grub_set_prefix_and_root): Init prefix.
16875
16876
2011-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
16877
16878
	* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
16879
	Don't add the bogus brackets.
16880
16881
2011-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
16882
16883
	ExFAT support.
16884
16885
	* Makefile.util.def (libgrubmods.a): Add grub-core/fs/exfat.c.
16886
	* grub-core/Makefile.core.def (exfat): New module.
16887
	* grub-core/fs/exfat.c: New file.
16888
	* grub-core/fs/fat.c (GRUB_FAT_DIR_ENTRY_SIZE): Removed.
16889
	(GRUB_FAT_ATTR_*): Make into an enum.
16890
	(GRUB_FAT_ATTR_LONG_NAME) [MODE_EXFAT]: Removed.
16891
	(GRUB_FAT_ATTR_VALID) [MODE_EXFAT]: Remove GRUB_FAT_ATTR_VOLUME_ID.
16892
	(GRUB_FAT_ATTR_VOLUME_ID) [MODE_EXFAT]: Removed.
16893
	(GRUB_FAT_MAXFILE): Removed.
16894
	(grub_exfat_bpb) [MODE_EXFAT]: New struct.
16895
	(grub_current_fat_bpb_t): New type.
16896
	(grub_fat_dir_entry) [MODE_EXFAT]: New struct.
16897
	(grub_fat_dir_node) [MODE_EXFAT]: New struct.
16898
	(grub_fat_dir_node_t): New type.
16899
	(grub_fat_data) [MODE_EXFAT]: Remove root_sector and num_root_sectors.
16900
	(fat_log2) [MODE_EXFAT]: Removed.
16901
	(grub_fat_mount): Use grub_current_fat_bpb_t. Add some sanity checks.
16902
	(grub_fat_mount) [MODE_EXFAT]: Handle ExFAT.
16903
	(grub_fat_iterate_dir) [MODE_EXFAT]: New function.
16904
	(grub_fat_find_dir) [MODE_EXFAT]: Handle ExFAT.
16905
	(grub_fat_label) [MODE_EXFAT]: New function.
16906
	(grub_fat_fs) [MODE_EXFAT]: Set name to "exfat" and
16907
	reserved_first_sector to 0.
16908
16909
2011-10-19  Vladimir Serbinenko  <phcoder@gmail.com>
16910
16911
	Move grub_reboot out of the kernel.
16912
16913
	* grub-core/Makefile.core.def (reboot): Add platform-specific files.
16914
	* grub-core/kern/efi/efi.c (grub_reboot): Moved to ...
16915
	* grub-core/lib/efi/reboot.c: ... here.
16916
	* grub-core/kern/i386/efi/startup.S: Remove including of realmode.S.
16917
	* grub-core/kern/i386/ieee1275/startup.S: Likewise.
16918
	* grub-core/kern/i386/pc/startup.S (grub_exit): Inline cold_reboot.
16919
	* grub-core/kern/i386/realmode.S (grub_reboot): Moved to...
16920
	* grub-core/lib/i386/reboot_trampoline.S: ... here.
16921
	* grub-core/kern/ieee1275/openfw.c (grub_reboot): Moved to...
16922
	* grub-core/lib/ieee1275/reboot.c: ... here.
16923
	* grub-core/kern/mips/arc/init.c (grub_reboot): Moved to...
16924
	* grub-core/lib/mips/arc/reboot.c: ... here.
16925
	* grub-core/kern/mips/loongson/init.c (grub_reboot): Moved to...
16926
	* grub-core/lib/mips/loongson/reboot.c: ...here.
16927
	* grub-core/kern/mips/qemu_mips/init.c (grub_reboot): Moved to...
16928
	* grub-core/lib/mips/qemu_mips/reboot.c: ... here.
16929
	* include/grub/emu/misc.h (grub_reboot): New function declaration.
16930
	* include/grub/i386/reboot.h: New file.
16931
	* include/grub/mips/loongson/ec.h: Fix includes.
16932
	* include/grub/mips/qemu_mips/kernel.h (grub_reboot): Removed.
16933
	* include/grub/misc.h (grub_reboot): Don't mark as kernel function.
16934
	* grub-core/lib/i386/reboot.c: New file.
16935
16936
2011-10-18  Vladimir Serbinenko  <phcoder@gmail.com>
16937
16938
	Make grub_prefix into module to fix the arbitrary limit and save
16939
	some space.
16940
16941
	* grub-core/kern/emu/main.c (grub_prefix): Removed.
16942
	* grub-core/kern/i386/coreboot/startup.S (grub_prefix): Likewise.
16943
	* grub-core/kern/i386/efi/startup.S (grub_prefix): Likewise.
16944
	* grub-core/kern/i386/ieee1275/startup.S (grub_prefix): Likewise.
16945
	* grub-core/kern/i386/pc/startup.S (grub_prefix): Likewise.
16946
	* grub-core/kern/i386/qemu/startup.S (grub_prefix): Likewise.
16947
	* grub-core/kern/ia64/efi/startup.S (grub_prefix): Likewise.
16948
	* grub-core/kern/mips/startup.S (grub_prefix): Likewise.
16949
	* grub-core/kern/powerpc/ieee1275/startup.S (grub_prefix): Likewise.
16950
	* grub-core/kern/sparc64/ieee1275/crt0.S (grub_prefix): Likewise.
16951
	* grub-core/kern/x86_64/efi/startup.S (grub_prefix): Likewise.
16952
	* include/grub/ia64/efi/kernel.h: Removed.
16953
	* include/grub/kernel.h: New module type OBJ_TYPE_PREFIX.
16954
	(grub_prefix): Removed.
16955
	* include/grub/offsets.h (GRUB_KERNEL_I386_PC_PREFIX): Removed.
16956
	(GRUB_KERNEL_I386_PC_PREFIX_END): Likewise.
16957
	(GRUB_KERNEL_I386_QEMU_PREFIX): Likewise.
16958
	(GRUB_KERNEL_I386_QEMU_PREFIX_END): Likewise.
16959
	(GRUB_KERNEL_SPARC64_IEEE1275_PREFIX): Likewise.
16960
	(GRUB_KERNEL_SPARC64_IEEE1275_PREFIX_END): Likewise.
16961
	(GRUB_KERNEL_POWERPC_IEEE1275_PREFIX): Likewise.
16962
	(GRUB_KERNEL_POWERPC_IEEE1275_PREFIX_END): Likewise.
16963
	(GRUB_KERNEL_MIPS_LOONGSON_PREFIX): Likewise.
16964
	(GRUB_KERNEL_MIPS_LOONGSON_PREFIX_END): Likewise.
16965
	(GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX): Likewise.
16966
	(GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX_END): Likewise.
16967
	(GRUB_KERNEL_MIPS_ARC_PREFIX): Likewise.
16968
	(GRUB_KERNEL_MIPS_ARC_PREFIX_END): Likewise.
16969
	(GRUB_KERNEL_I386_EFI_PREFIX): Likewise.
16970
	(GRUB_KERNEL_I386_EFI_PREFIX_END): Likewise.
16971
	(GRUB_KERNEL_IA64_EFI_PREFIX): Likewise.
16972
	(GRUB_KERNEL_IA64_EFI_PREFIX_END): Likewise.
16973
	(GRUB_KERNEL_X86_64_EFI_PREFIX): Likewise.
16974
	(GRUB_KERNEL_X86_64_EFI_PREFIX_END): Likewise.
16975
	(GRUB_KERNEL_I386_COREBOOT_PREFIX): Likewise.
16976
	(GRUB_KERNEL_I386_COREBOOT_PREFIX_END): Likewise.
16977
	(GRUB_KERNEL_I386_MULTIBOOT_PREFIX): Likewise.
16978
	(GRUB_KERNEL_I386_MULTIBOOT_PREFIX_END): Likewise.
16979
	(GRUB_KERNEL_I386_IEEE1275_PREFIX): Likewise.
16980
	(GRUB_KERNEL_I386_IEEE1275_PREFIX_END): Likewise.
16981
	(GRUB_KERNEL_MACHINE_PREFIX): Likewise.
16982
	(GRUB_KERNEL_MACHINE_PREFIX_END): Likewise.
16983
	* grub-core/kern/main.c (grub_set_prefix_and_root): Retrieve grub_prefix
16984
	from module.
16985
	* util/grub-mkimage.c (image_target_desc): Removed prefix and
16986
	prefix_end.
16987
	(image_targets): Likewise.
16988
	(generate_image): Put prefix as a module.
16989
16990
2011-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
16991
16992
	Replace grub_module_iterate with FOR_MODULES.
16993
16994
	* grub-core/disk/memdisk.c (GRUB_MOD_INIT): Switched to new interface.
16995
	* grub-core/kern/efi/efi.c (grub_arch_modules_addr): Renamed to...
16996
	(grub_efi_modules_addr): ...this.
16997
	* grub-core/kern/efi/init.c (grub_modbase): New variable.
16998
	(grub_efi_init): Set grub_modbase.
16999
	* grub-core/kern/emu/main.c (grub_arch_modules_addr): Removed.
17000
	(grub_modbase): New variable.
17001
	* grub-core/kern/i386/coreboot/init.c (grub_arch_modules_addr): Removed.
17002
	(grub_modbase): New variable.
17003
	(grub_machine_init): Set grub_modbase.
17004
	* grub-core/kern/i386/pc/init.c (grub_arch_modules_addr): Removed.
17005
	(grub_modbase): New variable.
17006
	(grub_machine_init): Set grub_modbase.
17007
	* grub-core/kern/ieee1275/init.c (grub_arch_modules_addr): Removed.
17008
	(grub_modbase): New variable.
17009
	(grub_machine_init): Set grub_modbase.
17010
	* grub-core/kern/main.c (grub_module_iterate): Remove.
17011
	(grub_modules_get_end): Use grub_modbase.
17012
	(grub_load_modules): Use FOR_MODULES.
17013
	(grub_load_config): Likewise.
17014
	* grub-core/kern/mips/arc/init.c (grub_arch_modules_addr): Removed.
17015
	(grub_modbase): New variable.
17016
	(grub_machine_init): Set grub_modbase.
17017
	* grub-core/kern/mips/loongson/init.c (grub_arch_modules_addr): Removed.
17018
	(grub_modbase): New variable.
17019
	(grub_machine_init): Set grub_modbase.
17020
	* grub-core/kern/mips/qemu_mips/init.c (grub_arch_modules_addr):
17021
	Removed.
17022
	(grub_modbase): New variable.
17023
	(grub_machine_init): Set grub_modbase.
17024
	* include/grub/efi/efi.h (grub_efi_modules_addr): New declaration.
17025
	* include/grub/kernel.h (grub_arch_modules_addr): Removed.
17026
	(grub_module_iterate): Likewise.
17027
	(grub_modbase): New variable declaration.
17028
	(FOR_MODULES): New macro.
17029
17030
2011-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
17031
17032
	* configure.ac: Check for __ctzdi2 and __ctzsi2.
17033
	* include/grub/libgcc.h: Include __ctzdi2 and __ctzsi2 if present.
17034
17035
2011-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
17036
17037
	Fix few obvious type discrepancies.
17038
17039
	* grub-core/fs/affs.c (grub_affs_read_file): Use grub_off_t for offset.
17040
	* grub-core/fs/afs.c (grub_afs_read_file): Likewise.
17041
	* grub-core/fs/fshelp.c (grub_fshelp_find_file): Remove leftover
17042
	variable.
17043
	* grub-core/fs/hfs.c (grub_hfs_read_file): Use grub_off_t for offset
17044
	and connected types.
17045
	* grub-core/fs/nilfs2.c (grub_nilfs2_read_file): Use grub_off_t for
17046
	offset.
17047
	(grub_nilfs2_iterate_dir): Use grub_off_t for fpos.
17048
	* grub-core/fs/sfs.c (grub_sfs_read_file): Use grub_off_t for offset.
17049
	* grub-core/fs/ufs.c (grub_ufs_read_file): Use grub_off_t for offset
17050
	and connected types.
17051
17052
2011-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
17053
17054
	Fix python 3.x incompatibilities.
17055
17056
	* gentpl.py: Put brackets around print strings.
17057
	* util/import_gcry.py: Open explicitly as utf-8.
17058
	Use in instead of has_key.
17059
17060
2011-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
17061
17062
	* grub-core/fs/xfs.c (grub_xfs_inode): New field fork_offset.
17063
	(GRUB_XFS_INO_AGBITS): Make into inline function.
17064
	(GRUB_XFS_INO_INOINAG): Likewise.
17065
	(GRUB_XFS_INO_AG): Likewise.
17066
	(GRUB_XFS_FSB_TO_BLOCK): Likewise.
17067
	(GRUB_XFS_EXTENT_OFFSET): Likewise.
17068
	(GRUB_XFS_EXTENT_BLOCK): Likewise.
17069
	(GRUB_XFS_EXTENT_SIZE): Likewise.
17070
	(GRUB_XFS_ROUND_TO_DIRENT): Likewise.
17071
	(GRUB_XFS_NEXT_DIRENT): Likewise.
17072
	(grub_xfs_read_block): Rewrite the btree parsing. Fixes invalid BMAP.
17073
	(grub_xfs_read_file): Fix offset type.
17074
17075
2011-10-15  Robert Millan  <rmh@gnu.org>
17076
17077
	* util/getroot.c (grub_util_get_grub_dev): Fix OS selection #ifdefs.
17078
17079
2011-10-15  Robert Millan  <rmh@gnu.org>
17080
17081
	Fix build problem on FreeBSD and GNU/kFreeBSD.
17082
17083
	* util/getroot.c [__FreeBSD_kernel__]: Include `<sys/mount.h>'.
17084
17085
2011-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
17086
17087
	Fix overflow with >2GiB file on HFS+. >4GiB wasn't tested.
17088
17089
	* grub-core/fs/hfsplus.c (grub_hfsplus_btree): Use more appropriate
17090
	types.
17091
	(grub_hfsplus_btree_recoffset): Likewise.
17092
	(grub_hfsplus_btree_recptr): Likewise.
17093
	(grub_hfsplus_find_block): Likewise.
17094
	(grub_hfsplus_btree_search): Likewise.
17095
	(grub_hfsplus_read_block): Likewise.
17096
	(grub_hfsplus_read_file): Likewise.
17097
	(grub_hfsplus_mount): Likewise.
17098
	(grub_hfsplus_btree_iterate_node): Likewise.
17099
	(grub_hfsplus_btree_search): Likewise.
17100
	(grub_hfsplus_iterate_dir): Likewise.
17101
	(grub_hfsplus_read): A small code simplification.
17102
17103
2011-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
17104
17105
	* grub-core/kern/emu/hostdisk.c
17106
	(convert_system_partition_to_system_disk): Don't assume that children
17107
	of mapper nodes are mapper nodes.
17108
17109
2011-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
17110
17111
	* grub-core/lib/posix_wrap/ctype.h (isxdigit): Use grub_isxdigit.
17112
	* include/grub/misc.h (grub_isxdigit): New function.
17113
	* grub-core/video/colors.c (my_isxdigit): Removed. All users
17114
	switched to grub_isxdigit.
17115
	* grub-core/term/serial.c (grub_serial_find): Fix in case of port
17116
	number starting with a letter.
17117
17118
2011-10-09  Robert Millan  <rmh@gnu.org>
17119
17120
	LVM support for FreeBSD and GNU/kFreeBSD.
17121
17122
	* util/lvm.c (grub_util_lvm_isvolume): Enable on FreeBSD and
17123
	GNU/kFreeBSD.
17124
	(LVM_DEV_MAPPER_STRING): Move from here ...
17125
	* include/grub/util/lvm.h (LVM_DEV_MAPPER_STRING): ... to here.
17126
	* util/getroot.c: Include `<grub/util/lvm.h>'.
17127
	(grub_util_get_dev_abstraction): Enable
17128
	grub_util_biosdisk_is_present() on FreeBSD and GNU/kFreeBSD.
17129
	Check for LVM abstraction on FreeBSD and GNU/kFreeBSD.
17130
	(grub_util_get_grub_dev): Replace "/dev/mapper/" with
17131
	`LVM_DEV_MAPPER_STRING'.  Enable LVM and mdRAID only on platforms that
17132
	support it.
17133
	* util/grub-setup.c (main): Check for LVM also on FreeBSD and
17134
	GNU/kFreeBSD.
17135
	* util/grub.d/10_kfreebsd.in: Load `geom_linux_lvm' kernel module
17136
	when LVM abstraction is required for ${GRUB_DEVICE}.
17137
17138
2011-10-06  Szymon Janc <szymon@janc.net.pl>
17139
17140
	Add support for LZO compression in GRUB:
17141
	- import of minilzo library, 
17142
	- LZO decompression for btrfs,
17143
	- lzop files decompression.
17144
17145
	* grub-core/io/lzopio.c: New file.
17146
	* grub-core/lib/adler32.c: Likewise.
17147
	* grub-core/lib/minilzo/lzoconf.h: Likewise.
17148
	* grub-core/lib/minilzo/lzodefs.h: Likewise.
17149
	* grub-core/lib/minilzo/minilzo.c: Likewise.
17150
	* grub-core/lib/minilzo/minilzo.h: Likewise.
17151
	* Makefile.util.def (libgrubmods.a): Add grub-core/io/lzopio.c,
17152
	grub-core/lib/adler32.c, grub-core/io/lzopio.c,
17153
	grub-core/lib/minilzo/minilzo.c to common.
17154
	* Makefile.util.def (libgrubmods.a): Add flags required by minilzo to
17155
	cflags in cppflags.
17156
	* grub-core/Makefile.core.def (btrfs): Likewise.
17157
	* grub-core/Makefile.core.def (lzopio): New module.
17158
	(adler32): Likewise.
17159
	* grub-core/fs/btrfs.c: Include minilzo.h.
17160
	(GRUB_BTRFS_COMPRESSION_LZO): New define.
17161
	(GRUB_BTRFS_LZO_BLOCK_SIZE): Likewise.
17162
	(GRUB_BTRFS_LZO_BLOCK_MAX_CSIZE): Likewise.
17163
	(grub_btrfs_lzo_decompress): New function.
17164
	(grub_btrfs_extent_read): Add support for LZO compression type.
17165
	* include/grub/types.h (GRUB_UCHAR_MAX): New define.
17166
	(GRUB_USHRT_MAX): Likewise.
17167
	(GRUB_UINT_MAX): Likewise.
17168
	* grub-core/lib/posix_wrap/limits.h (USHRT_MAX): Likewise.
17169
	(UINT_MAX): Likewise.
17170
	(CHAR_BIT): Likewise.
17171
	* grub-core/lib/posix_wrap/sys/types.h (ULONG_MAX): Moved to
17172
	grub-core/lib/posix_wrap/limits.h
17173
	(UCHAR_MAX): Likewise.
17174
	* include/grub/file.h (grub_file_filter_id): New compression filter
17175
	GRUB_FILE_FILTER_LZOPIO.
17176
	* include/grub/file.h (grub_file_filter_id): Set
17177
	GRUB_FILE_FILTER_LZOPIO as GRUB_FILE_FILTER_COMPRESSION_LAST.
17178
	* include/grub/types.h (grub_get_unaligned16): New function.
17179
	(grub_get_unaligned32): Likewise.
17180
	(grub_get_unaligned64): Likewise.
17181
	* util/import_gcry.py (cryptolist): Add adler32.
17182
17183
2011-10-05  Vladimir Serbinenko  <phcoder@gmail.com>
17184
17185
	* grub-core/Makefile.core.def: Eliminate rarely used emu_condition. This
17186
	in perspective decreases the complexity of build system and fixes
17187
	compilation right now.
17188
17189
2011-10-01  Ales Nesrsta <starous@volny.cz>
17190
17191
	* grub-core/bus/usb/uhci.c: Changes made by Rock Cui - thanks!
17192
	(fixed problem related to using UHCI with coreboot).
17193
17194
2011-08-25  BVK Chaitanya  <bvk.groups@gmail.com>
17195
17196
	* gentpl.py: Use Autogen macros so that the output template file
17197
	(Makefile.tpl) size is reduced.
17198
17199
2011-09-29  Mads Kiilerich <mads@kiilerich.com>
17200
17201
	* grub-core/Makefile.core.def (kernel): Add kern/i386/int.S to
17202
	extra_dist.
17203
17204
2011-09-29  Mario Limonciello <mario_limonciello@dell.com>
17205
17206
	* util/misc.c (grub_util_get_disk_size) [__MINGW32__]: Strip trailing
17207
	slashes on PHYSICALDRIVE%d paths when making Windows CreateFile calls.
17208
17209
2011-09-29  Mario Limonciello <mario_limonciello@dell.com>
17210
17211
	* grub-core/kern/emu/misc.c (canonicalize_file_name) [__MINGW32__]: Use
17212
	_fullpath.
17213
17214
2011-09-29  Mario Limonciello <mario_limonciello@dell.com>
17215
17216
	Remove extra declaration of sleep for mingw32.
17217
17218
	* util/misc.c (sleep) [__MINGW32__]: Removed.
17219
	* include/grub/util/misc.h (sleep) [__MINGW32__]: Likewise.
17220
17221
2011-09-28  Grégoire Sutre  <gregoire.sutre@gmail.com>
17222
17223
	* include/grub/bsdlabel.h (grub_partition_bsd_disk_label): Add fields
17224
	type and packname.
17225
	* include/grub/i386/netbsd_bootinfo.h (NETBSD_BTINFO_BOOTDISK):
17226
	Resurrected.
17227
	(NETBSD_BTINFO_BOOTWEDGE): New definition.
17228
	(grub_netbsd_btinfo_bootwedge): New struct.
17229
	* grub-core/loader/i386/bsd.c (grub_netbsd_add_boot_disk_and_wedge):
17230
	New function.
17231
	(grub_cmd_netbsd): Call grub_netbsd_add_boot_disk_and_wedge.
17232
17233
2011-09-28  Thomas Haller <thomas.haller@fen-net.de>
17234
17235
	* grub-core/loader/multiboot_elfxx.c (Elf_Shdr): Set according to
17236
	loader.
17237
17238
2011-09-28  Andreas Born  <futur.andy@googlemail.com>
17239
17240
	Fix incorrect identifiers in bash-completion.
17241
17242
	* util/bash-completion.d/grub-completion.bash.in
17243
	(_grub_mkpasswd-pbkdf2): Rename to ...
17244
	(_grub_mkpasswd_pbkdf2): ... this. All users updated.
17245
	(_grub_script-check): Rename to ...
17246
	(_grub_script_check): ... this. All users updated.
17247
17248
2011-09-28  Vladimir Serbinenko  <phcoder@gmail.com>
17249
17250
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy):
17251
	Return 0 if disk isn't biosdisk.
17252
17253
2011-09-17  Grégoire Sutre  <gregoire.sutre@gmail.com>
17254
17255
	* Makefile.util.def (grub-mkrelpath): Add LIBUTIL for getrawpartition(3)
17256
	on NetBSD.
17257
	* Makefile.util.def (grub-fstest): Likewise.
17258
17259
2011-09-17  Grégoire Sutre  <gregoire.sutre@gmail.com>
17260
17261
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__NetBSD__]:
17262
	Get sector size from disk label.
17263
17264
2011-09-05  Colin Watson  <cjwatson@ubuntu.com>
17265
17266
	* util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Return 1 for
17267
	*/README* as well as README*.
17268
	Reported by: Axel Beckert.
17269
17270
2011-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
17271
17272
	* grub-core/kern/mips/loongson/init.c (grub_machine_init): Handle the
17273
	case of less than 256 MiB of RAM.
17274
17275
2011-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
17276
17277
	* grub-core/commands/wildcard.c (make_regex): Handle @.
17278
17279
2011-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
17280
17281
	* util/grub-install.in: Move cryptodisk logic to appropriate place.
17282
17283
2011-08-21 Szymon Janc <szymon@janc.net.pl>
17284
17285
	* acinclude.m4: Use AC_LANG_PROGRAM macro to generate source code for
17286
	 AC_LANG_CONFTEST macros.
17287
17288
2011-08-20  Szymon Janc <szymon@janc.net.pl>
17289
17290
	Add grub-fstest option to uncompress data for commands.
17291
17292
	* util/grub-fstest.c (uncompress): New var.
17293
	(options): New option -u.
17294
17295
2011-08-20  Szymon Janc <szymon@janc.net.pl>
17296
17297
	* grub-core/loader/i386/linux.c (grub_linux_setup_video): Add
17298
	GRUB_VIDEO_DRIVER_RADEON_FULOONG2E to switch case statement.
17299
17300
2011-08-20  Szymon Janc <szymon@janc.net.pl>
17301
17302
	* grub-core/io/gzio.c (grub_gzio_open): Always return original io if
17303
	file type was not recognized correctly (not gzip or corrupted).
17304
17305
2011-08-19  Vladimir Serbinenko  <phcoder@gmail.com>
17306
17307
	* grub-core/kern/mips/loongson/init.c (grub_reboot): Reboot Fuloong.
17308
	* include/grub/cs5536.h (GRUB_CS5536_MSR_DIVIL_RESET): New definition.
17309
17310
2011-08-19  Vladimir Serbinenko  <phcoder@gmail.com>
17311
17312
	* grub-core/Makefile.core.def (kernel): Add video/radeon_fuloong2e.c on
17313
	loongson.
17314
	* grub-core/kern/mips/loongson/init.c (grub_machine_init): Init
17315
	video_radeon_fuloong2e.
17316
	* grub-core/video/radeon_fuloong2e.c: New file.
17317
	* include/grub/video.h (grub_video_id_t): Add new ID
17318
	GRUB_VIDEO_DRIVER_RADEON_FULOONG2E.
17319
17320
2011-08-19  Vladimir Serbinenko  <phcoder@gmail.com>
17321
17322
	* include/grub/mips/loongson.h (GRUB_CPU_LOONGSON_COP0_PRID): New
17323
	define.
17324
	* grub-core/kern/mips/loongson/init.c (grub_machine_init): Check
17325
	that PRID matches the detected subplatform and reset the subplatform
17326
	if it doesn't.
17327
17328
2011-08-19  Vladimir Serbinenko  <phcoder@gmail.com>
17329
17330
	* grub-core/kern/misc.c (grub_vprintf): Fix a bug on malloc failure.
17331
17332
2011-08-19  Vladimir Serbinenko  <phcoder@gmail.com>
17333
17334
	Fix PCI iterating on functions >= 4.
17335
17336
	* grub-core/bus/pci.c (grub_pci_iterate): Remove useless ghost skipping.
17337
	* include/grub/mips/loongson/pci.h (GRUB_LOONGSON_OHCI_GHOST_FUNCTION):
17338
	Removed.
17339
	(GRUB_LOONGSON_EHCI_GHOST_FUNCTION): Likewise.
17340
	(grub_pci_read): Fix bitmask.
17341
	(grub_pci_read_word): Likewise.
17342
	(grub_pci_read_byte): Likewise.
17343
	(grub_pci_write): Likewise.
17344
	(grub_pci_write_word): Likewise.
17345
	(grub_pci_write_byte): Likewise.
17346
17347
2011-08-19  Vladimir Serbinenko  <phcoder@gmail.com>
17348
17349
	* configure.ac: Don't impose march=loongson2f on loongson platform. (It
17350
	can still be specified in TARGET_CFLAGS)
17351
17352
2011-08-19  Vladimir Serbinenko  <phcoder@gmail.com>
17353
17354
	Rename Fuloong into Fuloong 2F. Add new ID for Fuloong2E.
17355
17356
	* grub-core/Makefile.core.def (fwstart_fuloong): Rename fwstart_fuloong
17357
	into fwstart_fuloong2f. Use boot/mips/loongson/fuloong2f.S.
17358
	* grub-core/boot/mips/loongson/fuloong.S: Rename to ...
17359
	* grub-core/boot/mips/loongson/fuloong2f.S: ... this.
17360
	(FULOONG): Rename to ...
17361
	(FULOONG2F): ... this. All users updated.
17362
	* grub-core/boot/mips/startup_raw.S (machtype_fuloong_str): Rename to
17363
	(machtype_fuloong2f_str): ... this.
17364
	(machtype_fuloong2e_str): New string.
17365
	Check for machtype_fuloong2e_str.
17366
	* grub-core/loader/mips/linux.c (loongson_machtypes)
17367
	[GRUB_MACHINE_MIPS_LOONGSON]: Add GRUB_ARCH_MACHINE_FULOONG2E.
17368
	* grub-core/term/serial.c (loongson_defserial)
17369
	[GRUB_MACHINE_MIPS_LOONGSON]: New array.
17370
	(grub_serial_register) [GRUB_MACHINE_MIPS_LOONGSON]: Use
17371
	loongson_defserial.
17372
	* include/grub/mips/loongson/kernel.h (GRUB_ARCH_MACHINE_FULOONG):
17373
	Rename to ...
17374
	(GRUB_ARCH_MACHINE_FULOONG2F): ... this.
17375
	(GRUB_ARCH_MACHINE_FULOONG2E): New const.
17376
	* util/grub-mkimage.c (image_target_desc): Rename IMAGE_FULOONG_FLASH
17377
	to IMAGE_FULOONG2F_FLASH. All users updated.
17378
	(image_targets): Rename images.
17379
	* util/grub-mkstandalone.in: Accept fuloong2f and fuloong2e.
17380
17381
2011-08-19  Szymon Janc <szymon@janc.net.pl>
17382
17383
	Make enable of disk cache statistics code configurable.
17384
17385
	* configure.ac: --enable-cache-stats added.
17386
	* config.h.in (DISK_CACHE_STATS): New define.
17387
	* grub-core/Makefile.core.def (cacheinfo): New command.
17388
	* include/grub/disk.h(grub_disk_cache_get_performance): New function.
17389
	* grub-core/commands/cacheinfo.c: New file.
17390
	* grub-core/commands/minicmd.c (grub_rescue_cmd_info): Updated and
17391
	moved to cacheinfo.c.
17392
	* grub-core/kern/disk.c: Use DISK_CACHE_STATS to disable disk cache
17393
	debug code.
17394
	* include/grub/disk.h: Likewise.
17395
17396
2011-08-19  Szymon Janc <szymon@janc.net.pl>
17397
17398
	* Makefile.am (AUTOMAKE_OPTIONS): = Added -Wno-portability flag.
17399
	* grub-core/Makefile.am: Likewise.
17400
17401
2011-08-16  Vladimir Serbinenko  <phcoder@gmail.com>
17402
17403
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_iterate): Skip with
17404
	non-zero pull.
17405
17406
2011-08-16  Vladimir Serbinenko  <phcoder@gmail.com>
17407
17408
	* grub-core/fs/jfs.c (grub_jfs_read_file): New parameter ino.
17409
	All users updated.
17410
	(grub_jfs_lookup_symlink): Use correct starting inode.
17411
17412
2011-08-16  Vladimir Serbinenko  <phcoder@gmail.com>
17413
17414
	* util/grub-setup.c (main): Add missing gcry initialisation.
17415
17416
2011-08-16  Vladimir Serbinenko  <phcoder@gmail.com>
17417
17418
	Don't accept text modes on EFI when booting Linux.
17419
17420
	* grub-core/loader/i386/linux.c (ACCEPTS_PURE_TEXT): New define.
17421
	(grub_linux_boot) [!ACCEPTS_PURE_TEXT]: Restrict to graphics modes.
17422
17423
2011-08-15  Mario Limonciello  <mario_limonciello@dell.com>
17424
2011-08-15  Colin Watson  <cjwatson@ubuntu.com>
17425
17426
	* util/grub-probe.c (probe): Canonicalise the path argument, fixing
17427
	use of "/path/.." as in grub-install for EFI as well as handling
17428
	symlinks correctly.
17429
	Fixes Debian bug #637768.
17430
17431
2011-08-15  Colin Watson  <cjwatson@ubuntu.com>
17432
17433
	* util/grub-probe.c: Remove duplicate #include.
17434
17435
2011-08-10  Robert Millan  <rmh@gnu.org>
17436
17437
	Detect LSI MegaRAID SAS (`mfi') devices on GNU/kFreeBSD.
17438
17439
	* util/deviceiter.c [__FreeBSD_kernel__] (get_mfi_disk_name): New
17440
	function.
17441
	[__FreeBSD_kernel__] (grub_util_iterate_devices): Scan for mfi
17442
	(/dev/mfid[0-9]+) devices using get_mfi_disk_name().
17443
17444
2011-08-03  Robert Millan  <rmh@gnu.org>
17445
17446
	* include/grub/zfs/zap_leaf.h (typedef union zap_leaf_chunk): Mark
17447
	la_array as packed.
17448
	Reported by: Zachary Bedell
17449
17450
2011-07-26  Colin Watson  <cjwatson@ubuntu.com>
17451
17452
	* configure.ac: The Loongson port requires grub-mkfont due to its
17453
	use of -DUSE_ASCII_FAILBACK.  Raise an error if it is not going to
17454
	be built.
17455
17456
2011-07-26  Colin Watson  <cjwatson@ubuntu.com>
17457
17458
	* util/grub-install.in: Don't source grub-mkconfig_lib until after
17459
	processing arguments (otherwise help2man fails when GRUB has not yet
17460
	been installed).
17461
17462
2011-07-25  Vladimir Serbinenko  <phcoder@gmail.com>
17463
17464
	New script grub-mkstandalone.
17465
17466
	* Makefile.util.def (grub-mkstandalone): New script.
17467
	* docs/man/grub-mkstandalone.h2m: New file.
17468
	* util/grub-mkstandalone.in: Likewise.
17469
17470
2011-07-25  Vladimir Serbinenko  <phcoder@gmail.com>
17471
17472
	Support ATA disks with 4K sectors.
17473
17474
	* include/grub/ata.h (grub_ata): New member log_sector_size.
17475
	* grub-core/disk/ata.c (grub_ata_dumpinfo): Show sector size.
17476
	(grub_ata_identify): Read sector size.
17477
	(grub_ata_readwrite): Use log_sector_size rather than hardcoded value.
17478
17479
2011-07-25  Vladimir Serbinenko  <phcoder@gmail.com>
17480
17481
	* util/grub-install.in: Don't use uhci outside of x86.
17482
17483
2011-07-25  Vladimir Serbinenko  <phcoder@gmail.com>
17484
17485
	* util/grub-mkrescue.in: Add missing quotes.
17486
17487
2011-07-25  Vladimir Serbinenko  <phcoder@gmail.com>
17488
17489
	* grub-core/normal/menu.c (grub_menu_execute_entry): Fix NULL
17490
	dereference.
17491
17492
2011-07-23  Vladimir Serbinenko  <phcoder@gmail.com>
17493
17494
	* grub-core/disk/pata.c (grub_pata_readwrite): Add missing wait.
17495
17496
2011-07-23  Vladimir Serbinenko  <phcoder@gmail.com>
17497
17498
	* include/grub/video.h: add missing EXPORT_FUND on
17499
	grub_video_edid_checksum and grub_video_edid_preferred_mode.
17500
17501
2011-07-23  Vladimir Serbinenko  <phcoder@gmail.com>
17502
17503
	* include/grub/mips/kernel.h: Fix define conflict.
17504
17505
2011-07-23  Vladimir Serbinenko  <phcoder@gmail.com>
17506
17507
	* grub-core/kern/mips/cache_flush.S [GRUB_MACHINE_MIPS_LOONGSON]: Flush
17508
	all four ways.
17509
17510
2011-07-21  Colin Watson  <cjwatson@ubuntu.com>
17511
17512
	Preferred resolution detection for VBE.
17513
17514
	* grub-core/video/video.c (grub_video_edid_checksum): New function.
17515
	(grub_video_edid_preferred_mode): Likewise.  Try EDID followed by
17516
	the Flat Panel extension, in line with the X.org VESA driver.
17517
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_flat_panel_info):
17518
	New function.
17519
	(grub_vbe_bios_get_ddc_capabilities): Likewise.
17520
	(grub_vbe_bios_read_edid): Likewise.
17521
	(grub_vbe_get_preferred_mode): Likewise.
17522
	(grub_video_vbe_setup): When the mode is "auto", try to get the
17523
	preferred mode from VBE, and use the largest mode that is no larger
17524
	than the preferred mode (some BIOSes expose a preferred mode that is
17525
	not in their mode list!).  If this fails, fall back to 640x480 as a
17526
	safe conservative choice.
17527
	(grub_video_vbe_get_edid): New function.
17528
	(grub_video_vbe_adapter): Add get_edid.
17529
	* include/grub/video.h (struct grub_vbe_edid_info): New structure.
17530
	(struct grub_video_adapter): Add get_edid.
17531
	(grub_video_edid_checksum): Add prototype.
17532
	(grub_video_edid_preferred_mode): Likewise.
17533
	* include/grub/i386/pc/vbe.h (struct grub_vbe_flat_panel_info): New
17534
	structure.
17535
17536
	* grub-core/commands/videoinfo.c (print_edid): New function.
17537
	(grub_cmd_videoinfo): Print EDID if available.
17538
17539
	* util/grub.d/00_header.in (GRUB_GFXMODE): Default to "auto".  This
17540
	is more appropriate on a wider range of platforms than 640x480.
17541
	* docs/grub.texi (Simple configuration): Update GRUB_GFXMODE
17542
	documentation.
17543
17544
2011-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
17545
17546
	* util/grub-install.in: Recognize ESP mounted at /boot/EFI.
17547
17548
2011-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
17549
17550
	* po/POTFILES.in: Regenerate.
17551
17552
2011-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
17553
17554
	* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Fix
17555
	incorrect memory usage.
17556
17557
2011-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
17558
17559
	* util/grub-install.in: Source grub-mkconfig_lib.
17560
17561
2011-07-08  Vladimir Serbinenko  <phcoder@gmail.com>
17562
17563
	Remove getroot.c from core on emu platform.
17564
17565
	* grub-core/Makefile.core.def (kernel): Remove kern/emu/getroot.c and
17566
	kern/emu/raid.c.
17567
	* grub-core/kern/emu/main.c (main): Don't try to guess root device. It's
17568
	useless.
17569
	* grub-core/kern/emu/misc.c (get_win32_path): Moved from here...
17570
	* util/getroot.c (get_win32_path): ... here.
17571
	* grub-core/kern/emu/misc.c (fini_libzfs): Moved from here...
17572
	* util/getroot.c (fini_libzfs): ... here.
17573
	* grub-core/kern/emu/misc.c (grub_get_libzfs_handle): Moved from here...
17574
	* util/getroot.c (grub_get_libzfs_handle): ... here.
17575
	* grub-core/kern/emu/misc.c (grub_find_zpool_from_dir):
17576
	Moved from here...
17577
	* util/getroot.c (grub_find_zpool_from_dir): ... here.
17578
	* grub-core/kern/emu/misc.c
17579
	(grub_make_system_path_relative_to_its_root): Moved from here...
17580
	* util/getroot.c (grub_make_system_path_relative_to_its_root): ... here.
17581
	* grub-core/kern/emu/getroot.c: Moved from here ...
17582
	* util/getroot.c: ... here. All users updated.
17583
	* grub-core/kern/emu/raid.c: Moved from here ...
17584
	* util/raid.c: ... here. All users updated.
17585
17586
2011-07-08  Vladimir Serbinenko  <phcoder@gmail.com>
17587
17588
	* po/POTFILES.in: Regenerate.
17589
17590
2011-07-07  Vladimir Serbinenko  <phcoder@gmail.com>
17591
17592
	Fix compilation on GNU/Linux.
17593
17594
	* grub-core/kern/emu/getroot.c (grub_util_pull_device) [!FreeBSD]:
17595
	Disable geli.
17596
	(grub_util_get_grub_dev) [!FreeBSD]: Likewise.
17597
	(grub_util_pull_device) [HAVE_DEVICE_MAPPER]: Fix const and func name.
17598
	* grub-core/disk/cryptodisk.c (grub_cryptodisk_open): Fix proto.
17599
17600
2011-07-07  Vladimir Serbinenko  <phcoder@gmail.com>
17601
2011-07-07  Michael Gorven  <michael@gorven.za.net>
17602
2011-07-07  Clemens Fruhwirth <clemens@endorphin.org>
17603
17604
	LUKS and GELI support.
17605
17606
	* Makefile.util.def (libgrubkern.a): Add grub-core/lib/crypto.c,
17607
	grub-core/disk/luks.c, grub-core/disk/geli.c,
17608
	grub-core/disk/cryptodisk.c, grub-core/disk/AFSplitter.c,
17609
	grub-core/lib/pbkdf2.c, grub-core/commands/extcmd.c,
17610
	grub-core/lib/arg.c.
17611
	(libgrubmods.a): Remove gcrypts cflags and cppflags.
17612
	Remove grub-core/commands/extcmd.c, grub-core/lib/arg.c,
17613
	grub-core/lib/crypto.c, grub-core/lib/libgcrypt-grub/cipher/sha512.c,
17614
	grub-core/lib/libgcrypt-grub/cipher/crc.c and grub-core/lib/pbkdf2.c.
17615
	(grub-bin2h): Add libgcry.a.
17616
	(grub-mkimage): Likewise.
17617
	(grub-mkrelpath): Likewise.
17618
	(grub-script-check): Likewise.
17619
	(grub-editenv): Likewise.
17620
	(grub-mkpasswd-pbkdf2): Likewise.
17621
	(grub-pe2elf): Likewise.
17622
	(grub-fstest): Likewise.
17623
	(grub-mkfont): Likewise.
17624
	(grub-mkdevicemap): Likewise.
17625
	(grub-probe): Likewise.
17626
	(grub-ofpath): Likewise.
17627
	(grub-mklayout): Likewise.
17628
	(example_unit_test): Likewise.
17629
	(grub-menulst2cfg): Likewise.
17630
	* autogen.sh (UTIL_DEFS): Add Makefile.utilgcry.def.
17631
	* grub-core/Makefile.core.def (cryptodisk): New module.
17632
	(luks): Likewise.
17633
	(geli): Likewise.
17634
	* grub-core/disk/AFSplitter.c: New file.
17635
	* grub-core/disk/cryptodisk.c: Likewise.
17636
	* grub-core/disk/geli.c: Likewise.
17637
	* grub-core/disk/luks.c: Likewise.
17638
	* grub-core/kern/emu/getroot.c (get_dm_uuid): New function based on
17639
	grub_util_is_lvm.
17640
	(grub_util_get_dm_abstraction): New function.
17641
	(grub_util_follow_gpart_up): Likewise.
17642
	(grub_util_get_geom_abstraction): Likewise.
17643
	(grub_util_get_dev_abstraction): Use new functions.
17644
	(grub_util_pull_device): Pull GELI and LUKS.
17645
	(grub_util_get_grub_dev): Handle LUKS and GELI.
17646
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): New function.
17647
	(grub_util_biosdisk_open): Use grub_util_get_fd_sectors.
17648
	(follow_geom_up): Removed.
17649
	(grub_util_fd_seek): New function.
17650
	(open_device): Use grub_util_fd_seek.
17651
	(nread): Rename to ..
17652
	(grub_util_fd_read): ... this. All users updated.
17653
	* grub-core/lib/crypto.c (grub_crypto_ecb_decrypt): A better prototype.
17654
	(grub_crypto_cbc_decrypt): Likewise.
17655
	(grub_crypto_hmac_write): Likewise.
17656
	(grub_crypto_hmac_buffer): Likewise.
17657
	(grub_password_get): Extend to util.
17658
	* include/grub/crypto.h (gcry_cipher_spec) [GRUB_UTIL]:
17659
	New member modname.
17660
	(gcry_md_spec) [GRUB_UTIL]: Likewise.
17661
	* include/grub/cryptodisk.h: New file.
17662
	* include/grub/disk.h (grub_disk_dev_id): Rename LUKS to CRYPTODISK.
17663
	* include/grub/emu/getroot.h (grub_dev_abstraction_types): Add
17664
	LUKS and GELI.
17665
	(grub_util_follow_gpart_up): New proto.
17666
	* include/grub/emu/hostdisk.h (grub_util_fd_seek): Likewise.
17667
	(grub_util_fd_read): Likewise.
17668
	(grub_cryptodisk_cheat_mount): Likewise.
17669
	(grub_util_cryptodisk_print_uuid): Likewise.
17670
	(grub_util_get_fd_sectors): Likewise.
17671
	* util/grub-fstest.c (mount_crypt): New var.
17672
	(fstest): Mount crypto if requested.
17673
	(options): New option -C.
17674
	(argp_parser): Parse -C.
17675
	(main): Init and fini gcry.
17676
	* util/grub-install.in: Support cryptodisk install.
17677
	* util/grub-mkconfig.in: Export GRUB_ENABLE_CRYPTODISK.
17678
	* util/grub-mkconfig_lib.in (is_path_readable_by_grub): Support
17679
	cryptodisk.
17680
	(prepare_grub_to_access_device): Likewise.
17681
	* util/grub-mkpasswd-pbkdf2.c (main): Use grub_password_get.
17682
	* util/grub-probe.c (probe_partmap): Support cryptodisk UUID probe.
17683
	(probe_cryptodisk_uuid): New function.
17684
	(probe_abstraction): Likewise.
17685
	(probe): Use new functions.
17686
	* util/import_gcry.py: Create Makefile.utilgcry.def.
17687
	Add modname member.
17688
17689
2011-07-07  Vladimir Serbinenko  <phcoder@gmail.com>
17690
17691
	Lazy device scanning.
17692
17693
	* Makefile.util.def (libgrubkern.a): Add grub-core/kern/emu/raid.c.
17694
	(grub-setup): Remove util/raid.c.
17695
	* grub-core/Makefile.core.def (kernel): Add kern/emu/raid.c on emu.
17696
	* grub-core/disk/lvm.c (scan_depth): New variable.
17697
	(grub_lvm_iterate): Rescan if necessary.
17698
	(find_lv): New function based on grub_lvm_open.
17699
	(grub_lvm_open): Use find_lv. Rescan on error.
17700
	(is_node_readable): New function.
17701
	(is_lv_readable): Likewise.
17702
	(grub_lvm_scan_device): Skip already found disks.
17703
	(do_lvm_scan): New function. Move grub_lvm_scan_device inside of it.
17704
	Stop if searched device is found and readable.
17705
	* grub-core/disk/raid.c (inscnt): New variable.
17706
	(scan_depth): Likewise.
17707
	(scan_devices): New function based on grub_raid_register. Abort if
17708
	looked for device is found.
17709
	(grub_raid_iterate): Rescan if needed.
17710
	(find_array): NEw function based on -grub_raid_open.
17711
	(grub_raid_open): Use find_array and rescan.
17712
	(insert_array): Set became_readable_at.
17713
	* grub-core/kern/disk.c (grub_disk_dev_iterate): Iterate though "pull.
17714
	* grub-core/kern/emu/getroot.c (grub_util_open_dm) [HAVE_DEVICE_MAPPER]:
17715
	New function.
17716
	(grub_util_is_lvm) [HAVE_DEVICE_MAPPER]: Use grub_util_open_dm.
17717
	(grub_util_pull_device): New function.
17718
	(grub_util_get_grub_dev): Call grub_util_pull_device.
17719
	* util/raid.c: Moved to ..
17720
	* grub-core/kern/emu/raid.c: ... here.
17721
	(grub_util_raid_getmembers): New parameter "bootable".
17722
	All users updated. Support 1.x.
17723
	* include/grub/ata.h (grub_ata_dev): Change iterate prototype.
17724
	All users updated.
17725
	* include/grub/disk.h (grub_disk_pull_t): New enum.
17726
	(grub_disk_dev): Change iterate prototype.
17727
	All users updated.
17728
	* include/grub/emu/getroot.h (grub_util_raid_getmembers) [__linux__]:
17729
	New proto.
17730
	* include/grub/emu/hostdisk.h (grub_util_pull_device): Likewise.
17731
	* include/grub/lvm.h (grub_lvm_lv): New members fullname and compatname.
17732
	* include/grub/raid.h (grub_raid_array): New member became_readable_at.
17733
	* include/grub/scsi.h (grub_scsi_dev): Change iterate prototype.
17734
	All users updated.
17735
	* include/grub/util/raid.h: Removed.
17736
17737
2011-07-06  Vladimir Serbinenko  <phcoder@gmail.com>
17738
17739
	* po/POTFILES.in: Regenerate.
17740
17741
2011-07-06  Vladimir Serbinenko  <phcoder@gmail.com>
17742
17743
	Unify sparc init with other ieee1275.
17744
17745
	* grub-core/Makefile.core.def (kernel): Use kern/ieee1275/init.c
17746
	instead of kern/sparc64/ieee1275/init.c.
17747
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options)
17748
	[__sparc__]: Set GRUB_IEEE1275_FLAG_NO_PARTITION_0.
17749
	* grub-core/kern/ieee1275/init.c [__sparc__]: Include
17750
	grub/machine/kernel.h.
17751
	(grub_ieee1275_original_stack) [__sparc__]: New variable.
17752
	(grub_claim_heap) [__sparc__]: Use sparc version.
17753
	(grub_machine_init): Moved args parsing to
17754
	(grub_parse_cmdline): ...this.
17755
	* grub-core/kern/sparc64/ieee1275/init.c: Removed.
17756
	* include/grub/offsets.h (GRUB_KERNEL_SPARC64_IEEE1275_MOD_GAP):
17757
	New definition.
17758
	(GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN): Likewise.
17759
17760
	Move BOOTP to separate file.
17761
17762
	* grub-core/Makefile.core.def (net): Add net/bootp.c.
17763
	* grub-core/net/net.c: Move all BOOTP functions to
17764
	* grub-core/net/bootp.c: ... here.
17765
17766
	Use frame interface on PXE.
17767
17768
	* grub-core/Makefile.core.def (pxecmd): Removed.
17769
	(pxe): Use net/drivers/i386/pc/pxe.c rather than net/i386/pc/pxe.c.
17770
	* grub-core/commands/i386/pc/pxecmd.c: Removed.
17771
	* grub-core/i386/pc/pxe.c: Moved from here ...
17772
	* grub-core/net/i386/pc/pxe.c: ... here. Rewritten.
17773
	* grub-core/net/net.c (grub_net_open_real): Handle old pxe syntax.
17774
	* include/grub/i386/pc/pxe.h (grub_pxe_unload): Removed.
17775
17776
	EFI network support.
17777
17778
	* grub-core/Makefile.core.def (efinet): New module.
17779
	* grub-core/disk/efi/efidisk.c (compare_device_paths): Moved from
17780
	here...
17781
	* grub-core/kern/efi/efi.c (grub_efi_compare_device_paths): ... here.
17782
	All users updated.
17783
	* grub-core/kern/efi/init.c (grub_efi_net_config): New variable.
17784
	(grub_machine_get_bootlocation): Call grub_efi_net_config if needed.
17785
	* grub-core/kern/x86_64/efi/callwrap.S (efi_wrap_7): New function.
17786
	* grub-core/net/drivers/efi/efinet.c: New file.
17787
	* include/grub/efi/efi.h (grub_efi_compare_device_paths): New proto.
17788
	(grub_efi_net_config): New extern var.
17789
17790
	Various cleanups and bugfixes.
17791
17792
	* grub-core/disk/efi/efidisk.c (grub_efidisk_open): Fix off-by-one
17793
	error.
17794
	(grub_efidisk_get_device_name): Unify similar codepaths. Accept whole
17795
	disk declared as partition.
17796
	* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_open): Fix memory
17797
	leak on failure.
17798
	* grub-core/kern/dl.c (grub_dl_load_file): Fix memory leak.
17799
	* grub-core/kern/mm.c (grub_debug_malloc): Don't use unsupported %zx.
17800
	(grub_debug_zalloc): Likewise.
17801
	(grub_debug_realloc): Likewise.
17802
	(grub_debug_memalign): Likewise.
17803
	* grub-core/net/arp.c (grub_net_arp_receive): IPv4 is 4-byte wide.
17804
	Check that target is IPv4.
17805
	* grub-core/net/drivers/ieee1275/ofnet.c (grub_ofnet_findcards): Use
17806
	local-mac-address as fallback.
17807
	* grub-core/net/ethernet.c (grub_net_recv_ethernet_packet): Prevent
17808
	memory leak.
17809
	* grub-core/net/ip.c (ipchksum): Rename to ...
17810
	(grub_net_ip_chksum): ... this. All users updated.
17811
	(grub_net_recv_ip_packets): Special handling for DHCP.
17812
	* util/grub-mkimage.c (generate_image): Zero-out aout header.
17813
17814
	Unify prefix handling
17815
17816
	* grub-core/kern/efi/init.c (grub_efi_set_prefix): Revamped into ...
17817
	(grub_machine_get_bootlocation): ... this.
17818
	* grub-core/kern/emu/main.c (grub_machine_set_prefix): Revamped into ...
17819
	(grub_machine_get_bootlocation): ... this.
17820
	(grub_prefix): New variable.
17821
	(prefix): Removed.
17822
	(root_dev): New variable.
17823
	(dir): Likewise.
17824
	(main): Use new variables.
17825
	* grub-core/kern/i386/coreboot/init.c (grub_machine_set_prefix):
17826
	Revamped into ...
17827
	(grub_machine_get_bootlocation): ... this.
17828
	* grub-core/kern/i386/efi/init.c (grub_machine_set_prefix): Removed.
17829
	* grub-core/kern/i386/pc/init.c (make_install_device): Revamped into ...
17830
	(grub_machine_get_bootlocation): ... this.
17831
	(grub_machine_set_prefix): Removed.
17832
	* grub-core/kern/ia64/efi/init.c (grub_machine_set_prefix): Removed.
17833
	* grub-core/kern/ieee1275/init.c (grub_machine_set_prefix):
17834
	Revamped into ...
17835
	(grub_machine_get_bootlocation): ... this.
17836
	* grub-core/kern/main.c (grub_set_root_dev): Revamped into ...
17837
	(grub_set_prefix_and_root): ... this. All users updated.
17838
	* grub-core/kern/mips/init.c (grub_machine_set_prefix):
17839
	Revamped into ...
17840
	(grub_machine_get_bootlocation): ... this.
17841
	* include/grub/kernel.h (grub_machine_set_prefix): Removed.
17842
	(grub_machine_get_bootlocation): New proto.
17843
	* include/grub/i386/pc/kernel.h (grub_pc_net_config): New var.
17844
17845
	Less intrusive and more reliable seek on network implementation.
17846
17847
	* grub-core/kern/file.c (grub_file_net_seek): Removed.
17848
	(grub_file_seek): Don't call grub_file_net_seek.
17849
	* grub-core/net/net.c (grub_net_fs_read): Renamed to ...
17850
	(grub_net_fs_read_real): .. this.
17851
	(grub_net_seek_real): Use net->offset.
17852
	(grub_net_fs_read): Seek if necessary.
17853
17854
	Unify IEEE1275 netwotk config with the other platforms.
17855
17856
	* grub-core/kern/ieee1275/init.c (grub_ieee1275_net_config):
17857
	New variable.
17858
	(grub_machine_get_bootlocation): Support network.
17859
	* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args):
17860
	Support type and device parsing.
17861
	(grub_ieee1275_get_device_type): New function.
17862
	* grub-core/net/drivers/ieee1275/ofnet.c (grub_getbootp_real): Revamped
17863
	into ...
17864
	(grub_ieee1275_net_config_real): ... this.
17865
	(grub_ofnet_probecards): Removed.
17866
	* grub-core/Makefile.am (KERNEL_HEADER_FILES): Remove ofnet.h.
17867
	* include/grub/ieee1275/ofnet.h: Removed.
17868
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_net_config): NEw
17869
	extern var.
17870
	(grub_ieee1275_get_device_type): New function.
17871
17872
	Unify network device closing across platforms and make more robust.
17873
17874
	* grub-core/kern/ieee1275/init.c (grub_machine_fini): Don't call
17875
	grub_grubnet_fini.
17876
	* grub-core/net/ethernet.c (send_ethernet_packet): Open card if it isn't
17877
	already.
17878
	* grub-core/net/net.c (grub_net_network_level_interface_register):
17879
	Update num_ifaces.
17880
	(grub_net_card_unregister): Close all interfaces.
17881
	(receive_packets): Don't poll if no iterfaces are registered.
17882
	Open if necessary.
17883
	(grub_net_fini_hw): New function.
17884
	(grub_net_restore_hw): Likewise.
17885
	(fini_hnd): New variable.
17886
	(GRUB_MOD_INIT): Register preboot hook.
17887
	(GRUB_MOD_FINI): Run and unregister preboot hook.
17888
17889
	Poll network cards when idle.
17890
17891
	* grub-core/kern/term.c (grub_net_poll_cards_idle): New variable.
17892
	(grub_checkkey): Call grub_net_poll_cards_idle if it's not NULL.
17893
	* grub-core/net/net.c (receive_packets): Save last poll time.
17894
	(grub_net_poll_cards_idle_real): New function.
17895
	(GRUB_MOD_INIT): Register grub_net_poll_cards_idle.
17896
	(GRUB_MOD_FINI): Unregister grub_net_poll_cards_idle.
17897
	* include/grub/kernel.h (grub_poll_cards_idle): New extern variable.
17898
17899
	Rename ofnet interfaces.
17900
17901
	* grub-core/net/drivers/ieee1275/ofnet.c (find_alias): New function.
17902
	(grub_ofnet_findcards): Use ofnet_%s names.
17903
17904
	* util/grub-mknetdir.in: Support for EFI and IEEE1275.
17905
17906
	Cleanup socket opening.
17907
17908
	* grub-core/net/net.c (grub_net_fs_open): Rewritten.
17909
	(grub_net_fs_close): Likewise.
17910
	(grub_net_fs_read_real): Use eof member.
17911
	* include/grub/net/udp.h (+grub_net_udp_open): New proto.
17912
	(+grub_net_udp_close): New inline function.
17913
17914
	* include/grub/net/tftp.h: Moved to the top of ...
17915
	* grub-core/net/tftp.c: ... here.
17916
	* include/grub/net/ip.h: Moved mostly to the top of ...
17917
	* grub-core/net/ip.c: ... here.
17918
	* include/grub/net/ethernet.h: Moved mostly to the top of ...
17919
	* grub-core/net/ethernet.c: ... here.
17920
17921
	* grub-core/kern/device.c (grub_device_close): Free device->net->server.
17922
17923
	* grub-core/commands/probe.c (grub_cmd_probe): Use protocol name for
17924
	FS name.
17925
17926
	* include/grub/net/ip.h (ipv4_ini): Removed.
17927
	(ipv4_fini): Likewise.
17928
17929
	* include/grub/net/ip.h (grub_net_recv_ip_packets): New proto.
17930
	(grub_net_send_ip_packets): Likewise.
17931
17932
2011-07-05  Vladimir Serbinenko  <phcoder@gmail.com>
17933
17934
	* grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_init): Use new
17935
	grub_read_cmos prototype.
17936
17937
2011-07-05  Vladimir Serbinenko  <phcoder@gmail.com>
17938
17939
	VGA text support in qemu-mips
17940
17941
	* grub-core/Makefile.core.def (kernel): Add term/i386/pc/vga_text.c,
17942
	term/i386/vga_common.c and kern/vga_init.c on qemu-mips.
17943
	* grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Init vga
17944
	text.
17945
	* grub-core/kern/i386/qemu/init.c: Renamed to ...
17946
	* grub-core/kern/vga_init.c: ... this.
17947
	* grub-core/kern/vga_init.c (VGA_ADDR) [__mips__]: Adjust.
17948
	(grub_qemu_init_cirrus) [__mips__]: Skip PCI and adjust the I/O base.
17949
	* grub-core/term/i386/pc/vga_text.c (VGA_TEXT_SCREEN) [__mips__]:
17950
	Adjust.
17951
	* include/grub/vga.h [GRUB_MACHINE_MIPS_QEMU_MIPS]: Declare
17952
	GRUB_MACHINE_PCI_IO_BASE.
17953
17954
2011-07-05  Vladimir Serbinenko  <phcoder@gmail.com>
17955
17956
	MIPS qemu flash support.
17957
17958
	* grub-core/boot/mips/startup_raw.S [GRUB_MACHINE_MIPS_QEMU_MIPS]: Check
17959
	magic.
17960
	* grub-core/kern/mips/qemu_mips/init.c (probe_mem): New function.
17961
	(grub_machine_init): Probe memory if its size isn't known.
17962
	* util/grub-mkimage.c (image_targets): Add flash targets.
17963
	(generate_image): Handle flash targets.
17964
17965
2011-07-05  Vladimir Serbinenko  <phcoder@gmail.com>
17966
17967
	MIPS qemu at_keyboard support.
17968
17969
	* gentpl.py (videoinkernel): Add qemu-mips.
17970
	* grub-core/Makefile.am (KERNEL_HEADER_FILES): Add necessary headers.
17971
	* grub-core/Makefile.core.def (kernel): Add at_keyboard and layout.
17972
	* grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Init new
17973
	modules.
17974
	* grub-core/term/at_keyboard.c (grub_keyboard_controller_init)
17975
	[GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't consider original set.
17976
	* grub-core/term/serial.c (grub_serial_register)
17977
	[GRUB_MACHINE_MIPS_QEMU_MIPS]: Make com0 explicitly active.
17978
17979
2011-07-05  Vladimir Serbinenko  <phcoder@gmail.com>
17980
17981
	CMOS support on sparc.
17982
17983
	* gentpl.py (cmos): Add powerpc and sparc.
17984
	* grub-core/Makefile.core.def (datetime): Add lib/ieee1275/cmos.c on
17985
	powerpc and sparc.
17986
	* grub-core/lib/cmos_datetime.c (grub_get_datetime)
17987
	[__powerpc__ || __sparc__]: Rename to grub_get_datetime_cmos.
17988
	(grub_set_datetime) [__powerpc__ || __sparc__]: Likewise to
17989
	grub_set_datetime_cmos.
17990
	* grub-core/lib/ieee1275/cmos.c: New file.
17991
	* grub-core/lib/ieee1275/datetime.c (no_ieee1275_rtc): New vaiable.
17992
	(find_rtc): Set no_ieee1275_rtc on error.
17993
	(grub_get_datetime): Call grub_get_datetime_cmos on error.
17994
	(grub_set_datetime): Call grub_set_datetime_cmos on error.
17995
	* include/grub/cmos.h (grub_cmos_read): Return grub_err_t since it may
17996
	fail. Move value to argument. All users updated
17997
	(grub_cmos_write): Likewise.
17998
	(grub_cmos_read) [__powerpc__ || __sparc__]: Rewritten.
17999
	(grub_cmos_write) [__powerpc__ || __sparc__]: Likewise.
18000
	* include/grub/datetime.h [__powerpc__ || __sparc__]: Declare
18001
	grub_get_datetime_cmos and grub_set_datetime_cmos.
18002
18003
2011-07-02  Grégoire Sutre  <gregoire.sutre@gmail.com>
18004
18005
	* util/grub-mkconfig.in: Use @PACKAGE@ instead of hardcoded name when
18006
	sourcing grub-mkconfig_lib.
18007
	* util/update-grub_lib.in: Likewise.
18008
	* util/grub.d/00_header.in: Likewise.
18009
	* util/grub.d/10_hurd.in: Likewise.
18010
	* util/grub.d/10_kfreebsd.in: Likewise.
18011
	* util/grub.d/10_linux.in: Likewise.
18012
	* util/grub.d/10_netbsd.in: Likewise.
18013
	* util/grub.d/10_windows.in: Likewise.
18014
	* util/grub.d/20_linux_xen.in: Likewise.
18015
	* util/grub.d/30_os-prober.in: Likewise.
18016
18017
2011-06-28  Colin Watson  <cjwatson@ubuntu.com>
18018
18019
	* grub-core/term/gfxterm.c (grub_virtual_screen_setup): Use
18020
	default_bg_color rather than black.
18021
	(grub_gfxterm_fullscreen): Likewise.
18022
	(grub_gfxterm_background_color_cmd): Save new background color in
18023
	default_bg_color.
18024
18025
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18026
18027
	* grub-core/Makefile.core.def (chain): Fix coreboot filename.
18028
18029
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18030
18031
	* grub-core/disk/pata.c (grub_pata_initialize) [QEMU_MIPS]: Fix a
18032
	mismerge.
18033
18034
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18035
18036
	Chainloading on coreboot support.
18037
18038
	* grub-core/Makefile.core.def (chain): Add coreboot.
18039
	* grub-core/loader/i386/coreboot/chainloader.c: New file.
18040
18041
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18042
18043
	* grub-core/loader/i386/bsd.c (grub_bsd_load): Handle relocator failure
18044
	if it happens.
18045
18046
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18047
18048
	Implement time command.
18049
18050
	* grub-core/Makefile.core.def (time): New module.
18051
	* grub-core/commands/time.c: New file.
18052
	* grub-core/script/parser.y: Remove "time" keyword.
18053
	* grub-core/script/yylex.l: Likewise.
18054
18055
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18056
18057
	* include/grub/loader.h (grub_loader_unregister_preboot_hook): Export.
18058
18059
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18060
18061
	* grub-core/lib/relocator.c (malloc_in_range): Fix a memory corruption
18062
	when handling leftovers.
18063
18064
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18065
18066
	* util/ieee1275/grub-ofpathname.c (main): Handle --help and --version
18067
	so that help2man doesn't fail.
18068
18069
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18070
18071
	* grub-core/net/drivers/ieee1275/ofnet.c (send_card_buffer) Use right
18072
	type in pointers on sparc64.
18073
	(get_card_packet): Likewise.
18074
18075
2011-06-27  Colin Watson  <cjwatson@ubuntu.com>
18076
18077
	* grub-core/commands/videoinfo.c (hook): Indicate current video mode
18078
	with `*'.
18079
	(grub_cmd_videoinfo): Fetch current video mode.
18080
18081
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18082
18083
	* grub-core/disk/scsi.c (grub_scsi_read): Limit SCSI reads to 32K
18084
	because of underlying system restrictions.
18085
18086
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18087
18088
	* util/grub-mkrescue.in: Rename "ata" to "pata" and add ahci when
18089
	necessary.
18090
18091
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18092
18093
	Coreboot video support.
18094
18095
	* grub-core/Makefile.core.def (vga): Extend to coreboot and multiboot.
18096
	(vbe): Likewise.
18097
	* grub-core/kern/i386/coreboot/startup.S: Include int.S.
18098
	* grub-core/kern/i386/pc/startup.S (grub_bios_interrupt): Moved from
18099
	here ...
18100
	* grub-core/kern/i386/int.S: ... here.
18101
	* grub-core/video/i386/pc/vbe.c: Updated includes.
18102
	* grub-core/video/i386/pc/vga.c: Likewise.
18103
	* include/grub/i386/coreboot/memory.h
18104
	(GRUB_MEMORY_MACHINE_SCRATCH_ADDR): New definition.
18105
	(GRUB_MEMORY_MACHINE_SCRATCH_SEG): Likewise.
18106
	(GRUB_MEMORY_MACHINE_SCRATCH_SIZE): Likewise.
18107
	* include/grub/i386/pc/int.h (GRUB_CPU_INT_FLAGS_DEFAULT) [!PCBIOS]:
18108
	Disable interrupts.
18109
	* include/grub/i386/pc/vga.h: Removed. All users updated.
18110
18111
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18112
18113
	* grub-core/disk/ahci.c (grub_ahci_readwrite_real): Use proper
18114
	definitions for dprintf.
18115
	* grub-core/disk/pata.c (grub_pata_readwrite): Likewise.
18116
18117
2011-06-27  Vladimir Serbinenko  <phcoder@gmail.com>
18118
18119
	* grub-core/net/drivers/ieee1275/ofnet.c (send_card_buffer): Fix
18120
	prototype.
18121
	(get_card_packet): Likewise.
18122
18123
2011-06-26  Yves Blusseau  <blusseau@zetam.org>
18124
18125
	Display the path of the file when file is not found
18126
18127
	* grub-core/fs/fat.c: Display the filename when file is not found.
18128
	* grub-core/fs/fshelp.c: Likewise.
18129
	* grub-core/fs/hfs.c: Likewise.
18130
	* grub-core/fs/jfs.c: Likewise.
18131
	* grub-core/fs/minix.c: Likewise.
18132
	* grub-core/fs/ufs.c: Likewise.
18133
	* grub-core/fs/btrfs.c: Likewise.
18134
	* grub-core/commands/i386/pc/play.c: Likewise.
18135
18136
2011-06-26  Szymon Janc <szymon@janc.net.pl>
18137
18138
	* grub-core/commands/cmp.c (grub_cmd_cmp): Remove unnecessary NULL
18139
	pointer checks before calling grub_free().
18140
	* grub-core/commands/wildcard.c (match_devices): Likewise.
18141
	* grub-core/commands/wildcard.c (match_files): Likewise.
18142
	* grub-core/fs/cpio.c (grub_cpio_dir): Likewise.
18143
	* grub-core/fs/cpio.c (grub_cpio_open): Likewise.
18144
	* grub-core/fs/udf.c (grub_udf_read_block): Likewise.
18145
	* grub-core/fs/xfs.c (grub_xfs_read_block): Likewise.
18146
	* grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Likewise.
18147
	* grub-core/normal/cmdline.c (grub_cmdline_get): Likewise.
18148
	* grub-core/script/yylex.l (grub_lexer_unput): Likewise.
18149
	* grub-core/video/readers/jpeg.c (grub_video_reader_jpeg): Likewise.
18150
	* grub-core/video/readers/png.c (grub_png_output_byte): Likewise.
18151
18152
2011-06-25  Patrick <p55@mailinator.com>
18153
18154
	* grub-core/kern/main.c (grub_load_normal_mode): Correct the comment.
18155
18156
2011-06-25  Vladimir Serbinenko  <phcoder@gmail.com>
18157
18158
	* grub-core/net/i386/pc/pxe.c (grub_pxe_recv): Fix declaration.
18159
	(grub_pxe_send): Likewise.
18160
	(GRUB_MOD_INIT): Fix types.
18161
18162
2011-06-24  Szymon Janc <szymon@janc.net.pl>
18163
18164
	* grub-core/io/xzio.c: Fix code style issues
18165
18166
2011-06-24  Vladimir Serbinenko  <phcoder@gmail.com>
18167
2011-06-24  Manoel Rebelo Abranches <mrabran@gmail.com>
18168
18169
	Network infrastructure.
18170
	The ARP protocol was made by Paulo Pinatti <ppinatti@br.ibm.com>
18171
18172
	* include/grub/net/arp.h: New file.
18173
	* include/grub/net/device.h: Likewise.
18174
	* include/grub/net/ethernet.h: Likewise.
18175
	* include/grub/net/ip.h: Likewise.
18176
	* include/grub/net/netbuff.h: Likewise.
18177
	* include/grub/net/tftp.h: Likewise.
18178
	* include/grub/net/udp.h: Likewise.
18179
	* include/grub/ieee1275/ofnet.h: Likewise.
18180
	* include/grub/emu/export.h: Likewise.
18181
	* include/grub/net.h: Likewise.
18182
	* grub-core/net/arp.c: Likewise.
18183
	* grub-core/net/ethernet.c: Likewise.
18184
	* grub-core/net/ip.c: Likewise.
18185
	* grub-core/net/udp.c: Likewise.
18186
	* grub-core/net/tftp.c: Likewise.
18187
	* grub-core/net/netbuff.c: Likewise.
18188
	* grub-core/net/net.c: Likewise.
18189
	* grub-core/net/drivers/emu/emunet.c: Likewise.
18190
	* grub-core/net/drivers/ieee1275/ofnet.c: Likewise.
18191
	* grub-core/Makefile.am (KERNEL_HEADER_FILES): Add net.h, ofnet.h and
18192
	export.h.
18193
	* grub-core/Makefile.core.def (net): New module.
18194
	(tftp): Likewise.
18195
	(ofnet): Likewise.
18196
	(emunet): Likewise.
18197
	* grub-core/commands/ls.c (grub_ls_list_devices) [!GRUB_UTIL]: List
18198
	network protocols.
18199
	* grub-core/kern/device.c (grub_net_open) : New variable.
18200
	(grub_device_open): Handle network device.
18201
	(grub_device_close): Likewise.
18202
	* grub-core/kern/file.c (grub_file_net_seek) : New variable.
18203
	(grub_grubnet_fini): Likewise.
18204
	(grub_file_seek): Seek in network device.
18205
	* grub-core/kern/fs.c (grub_fs_probe): Handle network devices.
18206
	* grub-core/kern/ieee1275/init.c (grub_machine_set_prefix): Handle
18207
	network root.
18208
	(grub_machine_fini): Call grub_grubnet_fini.
18209
	* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): Handle
18210
	network.
18211
	(grub_ieee1275_get_aliasdevname): New function.
18212
	* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
18213
	Add unofficial Solaris network info.
18214
	(grub_multiboot_make_mbi): Likewise.
18215
	* grub-core/fs/i386/pc/pxe.c: Moved from here ...
18216
	* grub-core/net/i386/pc/pxe.c: ...here. Adapted for new design.
18217
	* include/grub/device.h (grub_fs): Removed.
18218
	* include/grub/err.h (grub_err_t): Add network-related values.
18219
	* include/grub/i386/pc/pxe.h: Removed bootp parts.
18220
	* include/grub/ieee1275/ieee1275.h (grub_ofnetcard_data): New struct.
18221
	(grub_ieee1275_get_aliasdevname): New proto.
18222
	* include/grub/net.h: Rewritten.
18223
18224
2011-06-24  Vladimir Serbinenko  <phcoder@gmail.com>
18225
18226
	* grub-core/disk/raid.c (insert_array): Ensure uniqueness of readable
18227
	names.
18228
18229
2011-06-24  Vladimir Serbinenko  <phcoder@gmail.com>
18230
18231
	* grub-core/commands/wildcard.c (match_files): Add a useful dprintf.
18232
	(wildcard_expand): Don't stop on nonregexp parts after regexp ones since
18233
	it truncates the output.
18234
	Reported by: Ximin Luo.
18235
18236
2011-06-24  Vladimir Serbinenko  <phcoder@gmail.com>
18237
18238
	* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Skip . and ..
18239
18240
2011-06-24  Vladimir Serbinenko  <phcoder@gmail.com>
18241
18242
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Load
18243
	partmap before abstraction.
18244
18245
2011-06-24  Alexander Kurtz <kurtz.alex@googlemail.com>
18246
18247
	* util/grub-mkconfig_lib.in: Add missing quotes.
18248
18249
2011-06-24  Vladimir Serbinenko  <phcoder@gmail.com>
18250
18251
	* grub-core/kern/emu/getroot.c (grub_guess_root_device): Revert to
18252
	old method if mountinfo would return /dev/root and /dev/root doesn't
18253
	exist.
18254
18255
2011-06-24  Vladimir Serbinenko  <phcoder@gmail.com>
18256
18257
	ZFS zlib support
18258
18259
	* grub-core/fs/zfs/zfs.c (zlib_decompress): New function.
18260
	(decomp_table): Add zlib entries.
18261
	(zio_read): USe 8 bits for compression function rather than 3.
18262
	* include/grub/zfs/zio.h (zio_compress): Add zlib values.
18263
18264
2011-06-24  Vladimir Serbinenko  <phcoder@gmail.com>
18265
18266
	* grub-core/disk/ahci.c: Add missing license statements.
18267
	* grub-core/fs/romfs.c: Likewise.
18268
	* grub-core/lib/ia64/setjmp.S: Likewise.
18269
	* grub-core/loader/i386/pc/freedos.c: Likewise.
18270
	* grub-core/loader/ia64/efi/linux.c: Likewise.
18271
	* grub-core/video/colors.c: Likewise.
18272
	* include/grub/dl.h (GRUB_MOD_DEP): New macro.
18273
18274
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18275
18276
	AHCI support.
18277
18278
	* grub-core/Makefile.core.def (ata_pthru): Removed.
18279
	(ahci): New module.
18280
	(pata): Likewise.
18281
	* grub-core/bus/usb/ohci.c (GRUB_MOD_FINI): Unregister preboot hook
18282
	on unload.
18283
	* grub-core/commands/hdparm.c (grub_hdparm_do_ata_cmd): Use ATA
18284
	readwrite.
18285
	(grub_hdparm_do_check_powermode_cmd): Likewise.
18286
	(grub_hdparm_do_smart_cmd): Likewise.
18287
	(grub_hdparm_set_val_cmd): Likewise.
18288
	(grub_cmd_hdparm): Likewise. Check thta we have an ATA device.
18289
	* grub-core/disk/ahci.c: New file.
18290
	* grub-core/disk/ata.c: Factor out the low-level part into ...
18291
	* grub-core/disk/pata.c: ... here.
18292
	* grub-core/disk/ata_pthru.c: Contents moved to ...
18293
	* grub-core/disk/pata.c: ... here.
18294
	* grub-core/disk/scsi.c (grub_scsi_names): New array.
18295
	(grub_scsi_iterate): Use grub_scsi_names.
18296
	(grub_scsi_open): Likewise.
18297
	* grub-core/kern/disk.c (grub_disk_ata_pass_through): Removed.
18298
	* include/grub/ata.h (grub_ata_commands): Add DMA commands.
18299
	(grub_ata_regs_t): New struct.
18300
	(grub_disk_ata_pass_through_parms): Likewise.
18301
	(grub_ata_device): Renamed to ...
18302
	(grub_ata): ... this.
18303
	(grub_ata_dev): New struct.
18304
	Removed all low-level inline functions.
18305
	* include/grub/scsi.h: Add PATA and AHCI subsystems.
18306
	(grub_scsi_dev): Removed 'name' and 'id'. Added 'id' parameter to
18307
	iterate hooks and open. All users updated.
18308
	* util/grub-install.in: Handle AHCI disk module.
18309
18310
2011-06-23  Szymon Janc <szymon@janc.net.pl>
18311
18312
	Add support for DRI and RSTn markers in JPEG files.
18313
18314
	* grub-core/video/readers/jpeg.c (JPEG_MARKER_DRI): New define.
18315
	(JPEG_MARKER_RST0): Likewise.
18316
	(JPEG_MARKER_RST1): Likewise.
18317
	(JPEG_MARKER_RST2): Likewise.
18318
	(JPEG_MARKER_RST3): Likewise.
18319
	(JPEG_MARKER_RST4): Likewise.
18320
	(JPEG_MARKER_RST5): Likewise.
18321
	(JPEG_MARKER_RST6): Likewise.
18322
	(JPEG_MARKER_RST7): Likewise.
18323
	(grub_jpeg_data): New fields dri, r1, bitmap_ptr.
18324
	(grub_jpeg_decode_dri): New function.
18325
	(grub_jpeg_decode_sos): Move image data related part into
18326
	grub_jpeg_decode_data function.
18327
	(grub_jpeg_decode_data): New function.
18328
	(grub_jpeg_reset): New function.
18329
	(grub_jpeg_decode_jpeg): Handle new markers.
18330
18331
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18332
18333
	* util/ieee1275/ofpath.c (check_sas): Close fd.
18334
	(main): Free of_path.
18335
	Reported by: David Volgyes <dvolgyes>.
18336
18337
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18338
18339
	* util/grub-mkpasswd-pbkdf2.c (main): Don't double-close.
18340
	Reported by: David Volgyes <dvolgyes>.
18341
18342
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18343
18344
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Close
18345
	file after stat.
18346
	Reported by: David Volgyes <dvolgyes>.
18347
18348
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18349
18350
	* util/raid.c (grub_util_raid_getmembers): Close fd before returning.
18351
18352
	Reported by: David Volgyes <dvolgyes>.
18353
18354
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18355
18356
	* grub-core/lib/reed_solomon.c (rs_recover) [STANDALONE]:
18357
	Prevent memory leak.
18358
18359
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18360
18361
	* grub-core/lib/reed_solomon.c (rs_recover): Prevent memory leak.
18362
	(main): Close file.
18363
	Reported by: David Volgyes <dvolgyes>.
18364
18365
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18366
18367
	* grub-core/loader/i386/xnu.c (grub_cpu_xnu_fill_devprop): Don't attempt
18368
	to continue if allocation is failed.
18369
18370
	Reported by: David Volgyes <dvolgyes>.
18371
18372
2011-06-23  David Volgyes <dvolgyes>
18373
18374
	* grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Avoid NULL-pointer
18375
	dereference.
18376
18377
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18378
18379
	Fix spurious warning.
18380
18381
	* grub-core/partmap/acorn.c (grub_acorn_boot_block): Make a union.
18382
	(acorn_partition_map_find): Use .bin member.
18383
18384
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18385
18386
	* grub-core/kern/emu/getroot.c (grub_guess_root_device): Don't accept
18387
	/dev/root as a valid device.
18388
18389
2011-06-23  Jim Meyering  <meyering@redhat.com>
18390
18391
	Avoid NULL deref in grub_device_open.
18392
18393
	* grub-core/kern/device.c (grub_device_open): Don't dereference
18394
	a NULL pointer upon failed grub_env_get.
18395
18396
2011-06-23  Vladimir Serbinenko  <phcoder@gmail.com>
18397
18398
	Support non-512B sectors and agglomerate reads.
18399
18400
	* Makefile.util.def (libgrubmods.a): Add grub-core/commands/testload.c.
18401
	* grub-core/disk/efi/efidisk.c (grub_efidisk_data): Remove disk_io.
18402
	(disk_io_guid): Removed.
18403
	(make_devices): Locate solely by BlockIO.
18404
	(grub_efidisk_open): Fill log_sector_size and total_sectors.
18405
	(grub_efidisk_read): Use read_blocks.
18406
	(grub_efidisk_write): Use write_blocks.
18407
	* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Fill
18408
	log_sector_size.
18409
	(get_safe_sectors): Handle non-512B sectors.
18410
	(grub_biosdisk_read): Remove special CDROM handling. Handle non-512B
18411
	sectors.
18412
	(grub_biosdisk_write): Handle non-512B sectors.
18413
	* grub-core/disk/scsi.c (grub_scsi_open): Fill log_sector_size.
18414
	(grub_scsi_read): Remove special non-512B block handling (now handled
18415
	one level up).
18416
	* grub-core/kern/disk.c (grub_disk_open): Fill default log_sector_size
18417
	and do sanity checks.
18418
	(grub_disk_adjust_range): Handle non-512B sectors.
18419
	(transform_sector): New function.
18420
	(grub_disk_read_small): Likewise.
18421
	(grub_disk_read): Rewritten.
18422
	(grub_disk_write): Handle non-512B sectors.
18423
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Fill
18424
	log_sector_size.
18425
	(open_device): Use log_sector_size.
18426
	(grub_util_biosdisk_read): Likewise.
18427
	(grub_util_biosdisk_write): Likewise.
18428
	* grub-core/partmap/msdos.c (grub_partition_msdos_iterate): Handle
18429
	non-512B sectors.
18430
	(pc_partition_map_embed): Likewise.
18431
	* include/grub/disk.h (grub_disk): New field log_sector_size.
18432
	(GRUB_DISK_CACHE_SIZE): Redefined from GRUB_DISK_CACHE_BITS.
18433
	(GRUB_DISK_CACHE_BITS): Increased to 6.
18434
	* util/grub-fstest.c (fstest): New command testload.
18435
	(argp_parser): Likewise.
18436
18437
2011-06-16  Robert Millan  <rmh@gnu.org>
18438
18439
	Detect `ataraid' devices on GNU/kFreeBSD.  Fix for ATA devices using
18440
	`ata' driver on kernel of FreeBSD 9.
18441
18442
	* util/deviceiter.c [__FreeBSD_kernel__] (get_ada_disk_name)
18443
	(get_ataraid_disk_name): New functions.
18444
	[__FreeBSD_kernel__] (grub_util_iterate_devices): Scan for ataraid
18445
	(/dev/ar[0-9]+) and ada (/dev/ada[0-9]+) devices using
18446
	get_ataraid_disk_name() and get_ada_disk_name().
18447
18448
2011-06-13  Colin Watson  <cjwatson@ubuntu.com>
18449
18450
	* docs/man/grub-mklayout.h2m (DESCRIPTION): Add a reference to the
18451
	input format.
18452
18453
2011-05-29  Colin Watson  <cjwatson@ubuntu.com>
18454
18455
	* docs/grub.texi (Obtaining and Building GRUB): Substitute
18456
	`ftp.gnu.org' for `alpha.gnu.org'.
18457
18458
2011-05-27  Colin Watson  <cjwatson@ubuntu.com>
18459
18460
	* grub-core/kern/emu/hostdisk.c (linux_find_partition): Handle
18461
	partitions under /dev/disk/by-id/.
18462
18463
2011-05-27  Colin Watson  <cjwatson@ubuntu.com>
18464
18465
	* grub-core/kern/emu/hostdisk.c (linux_find_partition): Give up
18466
	after ten consecutive open failures.  Scanning all the way up to
18467
	10000 is excessive and can cause serious performance problems in
18468
	some configurations.
18469
	Fixes Ubuntu bug #787461.
18470
18471
2011-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
18472
18473
	* grub-core/disk/arc/arcdisk.c (reopen): Close old handle before
18474
	opening new one.
18475
18476
2011-05-21  Colin Watson  <cjwatson@ubuntu.com>
18477
2011-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
18478
18479
	Don't stat devices unless we have to.
18480
18481
	* grub-core/kern/emu/getroot.c (grub_find_device): Recognize
18482
	dir == /dev/mapper.
18483
	(grub_guess_root_device): Use already known os_dev if possible.
18484
	* grub-core/kern/emu/hostdisk.c
18485
	(convert_system_partition_to_system_disk): Scan only in /dev/mapper
18486
	if device is known to be a dm one.
18487
18488
2011-05-20  Colin Watson  <cjwatson@ubuntu.com>
18489
18490
	* util/grub-mkconfig.in: Export GRUB_CMDLINE_LINUX_XEN_REPLACE and
18491
	GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT.
18492
	Reported by: Pawel Tecza.
18493
18494
2011-05-19  Vladimir Serbinenko  <phcoder@gmail.com>
18495
18496
	* grub-core/Makefile.core.def (lsacpi): Fix ia64 mismerge.
18497
	(lsefisystab): Likewise.
18498
	(lssal): Likewise.
18499
	(lsefimmap): Likewise.
18500
	(hdparm): Enable on qemu-mips.
18501
	(setjmp): Add ia64 nodist.
18502
	(serial): Simplify tags.
18503
18504
2011-05-18  Colin Watson  <cjwatson@ubuntu.com>
18505
18506
	* Makefile.util.def (grub-ofpathname): Install manual page.
18507
18508
2011-05-18  Colin Watson  <cjwatson@ubuntu.com>
18509
18510
	* grub-core/fs/squash4.c: Add missing GRUB_MOD_LICENSE.
18511
18512
2011-05-18  Colin Watson  <cjwatson@ubuntu.com>
18513
18514
	* .bzrignore: Add grub-core/modinfo.sh and a number of test files.
18515
18516
2011-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
18517
18518
	* grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Downgrade a printf
18519
	into dprintf.
18520
18521
2011-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
18522
18523
	Use full 64-bit division.
18524
18525
	* grub-core/kern/misc.c (grub_divmod64_full): Renamed to ...
18526
	(grub_divmod64): ... this.
18527
	* include/grub/misc.h (grub_divmod64): Removed. All users switch to full
18528
	version.
18529
18530
2011-05-18  Colin Watson  <cjwatson@ubuntu.com>
18531
18532
	* util/grub-mkrescue.in: Use portable `.' rather than non-portable
18533
	`source'.
18534
18535
2011-05-18  Colin Watson  <cjwatson@ubuntu.com>
18536
18537
	* grub-core/genmod.sh.in: Use 'set -e' rather than '#! /bin/sh -e',
18538
	to avoid accidents when debugging with 'sh -x'.
18539
	* grub-core/gensyminfo.sh.in: Likewise.
18540
	* tests/example_scripted_test.in: Likewise.
18541
	* tests/grub_cmd_regexp.in: Likewise.
18542
	* tests/grub_script_blanklines.in: Likewise.
18543
	* tests/grub_script_dollar.in: Likewise.
18544
	* tests/grub_script_expansion.in: Likewise.
18545
	* tests/grub_script_final_semicolon.in: Likewise.
18546
	* tests/partmap_test.in: Likewise.
18547
	* tests/util/grub-shell-tester.in: Likewise.
18548
	* tests/util/grub-shell.in: Likewise.
18549
18550
2011-05-18  Colin Watson  <cjwatson@ubuntu.com>
18551
18552
	Move gfxmenu color handling to video, so that gfxterm can use it
18553
	too.
18554
18555
	* grub-core/gfxmenu/named_colors.c: Move to ...
18556
	* grub-core/video/colors.c: ... here.  Rename
18557
	grub_gui_get_named_color to grub_video_get_named_color.
18558
	* grub-core/gfxmenu/gui_string_util.c (my_isxdigit): Move to ...
18559
	* grub-core/video/colors.c (my_isxdigit): ... here.
18560
	* grub-core/gfxmenu/gui_string_util.c (parse_hex_color_component):
18561
	Move to ...
18562
	* grub-core/video/colors.c (parse_hex_color_component): ... here.
18563
	* grub-core/gfxmenu/gui_string_util.c (grub_gui_parse_color): Move
18564
	to ...
18565
	* grub-core/video/colors.c (grub_video_parse_color): ... here.
18566
18567
	* include/grub/gui.h (grub_gui_color_t): Move to ...
18568
	* include/grub/video.h (grub_video_rgba_color_t): ... here.
18569
	* include/grub/gui.h (grub_gui_color_rgb): Move to ...
18570
	* include/grub/video.h (grub_video_rgba_color_rgb): ... here.
18571
	* include/grub/gui.h (grub_gui_map_color): Move to ...
18572
	* include/grub/video.h (grub_video_map_rgba_color): ... here.
18573
	* include/grub/gui_string_util.h (grub_gui_get_named_color): Move
18574
	to ...
18575
	* include/grub/video.h (grub_video_get_named_color): ... here.
18576
	* include/grub/gui_string_util.h (grub_gui_parse_color): Move to ...
18577
	* include/grub/video.h (grub_video_parse_color): ... here.
18578
18579
	* grub-core/Makefile.core.def (kernel) [videoinkernel]: Add
18580
	video/colors.c.
18581
	(gfxmenu): Remove gfxmenu/named_colors.c.
18582
	(video) [videomodules]: Add video/colors.c.
18583
18584
	Add a background_color command.
18585
18586
	* grub-core/term/gfxterm.c (grub_gfxterm_background_color_cmd): New
18587
	function.
18588
	(GRUB_MOD_INIT): Register background_color command.
18589
	(GRUB_MOD_FINI): Unregister background_color command.
18590
	(redraw_screen_rect): Allow blend/replace of text layer to be
18591
	controlled independently from whether there is a background bitmap.
18592
	(grub_gfxterm_background_image_cmd): Change blend_text_bg when
18593
	changing bitmap.
18594
18595
2011-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
18596
18597
	Patch BPB in ntldr and chainloader --bpb.
18598
18599
	* grub-core/fs/fat.c: Include grub/fat.h.
18600
	(grub_fat_bpb): Moved to ...
18601
	* include/grub/fat.h (grub_fat_bpb): ... here. New file.
18602
	* grub-core/loader/i386/pc/chainloader.c: Include grub/fat.h and
18603
	grub/ntfs.h.
18604
	* include/grub/i386/pc/chainloader.h (grub_chainloader_flags_t):
18605
	Moved from here...
18606
	* grub-core/loader/i386/pc/chainloader.c (grub_chainloader_flags_t): ...
18607
	here.
18608
	* grub-core/loader/i386/pc/chainloader.c (grub_chainloader_patch_bpb):
18609
	New function.
18610
	(grub_chainloader_cmd): Patch BPB if --bpb is given.
18611
	(GRUB_MOD_INIT): Show --bpb.
18612
	* grub-core/loader/i386/pc/ntldr.c (grub_cmd_ntldr): Patch BPB.
18613
	* grub-core/normal/main.c (features): New variable.
18614
	(GRUB_MOD_INIT): Set feature_* variables.
18615
	* include/grub/i386/pc/chainloader.h (grub_chainloader_patch_bpb): New
18616
	proto.
18617
	* include/grub/ntfs.h (grub_ntfs_bpb): New field bios_drive.
18618
18619
2011-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
18620
18621
	* grub-core/Makefile.core.def (ieee1275_fb): Use enable=powerpc_ieee1275
18622
	for cleanness.
18623
18624
2011-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
18625
18626
	FreeDOS direct loading support.
18627
18628
	* docs/grub.texi (Supported OS): Add FreeDOS.
18629
	* grub-core/Makefile.core.def (freedos): New module.
18630
	* grub-core/lib/i386/relocator.c (grub_relocator16_ebx): New extern
18631
	variable.
18632
	(grub_relocator16_boot): Handle %ebx.
18633
	* grub-core/lib/i386/relocator16.S: Likewise.
18634
	* grub-core/loader/i386/pc/freedos.c: New file.
18635
18636
2011-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
18637
18638
	Long Linux command line support.
18639
18640
	* grub-core/loader/i386/linux.c (GRUB_LINUX_CL_END_OFFSET): Removed.
18641
	(maximal_cmdline_size): New variable.
18642
	(allocate_pages): Use maximal_cmdline_size.
18643
	(grub_cmd_linux): Set and use maximal_cmdline_size.
18644
	* grub-core/loader/i386/pc/linux.c (GRUB_LINUX_CL_END_OFFSET): Removed.
18645
	(allocate_pages): Use maximal_cmdline_size.
18646
	(grub_cmd_linux): Set and use maximal_cmdline_size.
18647
	* include/grub/i386/linux.h (GRUB_LINUX_SETUP_MOVE_SIZE): Removed.
18648
	(linux_kernel_header): Add fields kernel_alignment, relocatable, pad
18649
	and cmdline_size.
18650
18651
2011-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
18652
2011-05-18  Colin Watson  <cjwatson@ubuntu.com>
18653
18654
	Improve devmapper support
18655
18656
	* grub-core/kern/emu/getroot.c (grub_util_is_dmraid): Removed.
18657
	(grub_util_is_lvm): New function.
18658
	(grub_util_get_dev_abstraction): Assume dmraid if not lvm rather
18659
	than lvm if not dmraid.
18660
	Handle mapped md nodes.
18661
	* grub-core/kern/emu/hostdisk.c (device_is_mapped): Rename to ...
18662
	(grub_util_device_is_mapped): ... this. Make always available. All users
18663
	updated.
18664
	(grub_util_get_dm_node_linear_info) [HAVE_DEVICE_MAPPER]: New function.
18665
	(convert_system_partition_to_system_disk): Handle lvm, mpath and
18666
	dmraid nodes.
18667
	* include/grub/emu/misc.h (grub_util_device_is_mapped): New proto.
18668
18669
2011-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
18670
18671
	Unify grub-mkrescue (except powerpc) and grrub-mknetdir across platforms
18672
18673
	* grub-core/Makefile.am (platform_DATA): Add modinfo.sh.
18674
	* grub-core/modinfo.sh.in: New file.
18675
	* grub-core/Makefile.core.def (modinfo.sh): New script.
18676
	* util/grub-mknetdir.in: Use modinfo.sh.
18677
	* util/grub-mkrescue.in: Likewise.
18678
18679
2011-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
18680
18681
	* grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size):
18682
	Fix potential usage of Elf32 instead of Elf64 when compiling on
18683
	32-bit architecture. Add endianness macros while on it.
18684
18685
2011-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
18686
18687
	Use mipsel- rather than mips- in directories involving mipsel ports to
18688
	allow both endiannesses coexist.
18689
18690
	* configure.ac: proparate target_cpu=mipsel rather than resetting to
18691
	mips. All conditions adjusted.
18692
	* tests/util/grub-shell-tester.in: Remove gratuitious target_cpu
18693
	variable.
18694
	* util/grub-install.in: Adjust conditions to take renaming into account.
18695
	* util/grub-mkimage.c (image_targets): Likewise. New target
18696
	mips-qemu_mips-elf for bigendian mips.
18697
18698
2011-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
18699
18700
	Avoid unnecessary copying on MIPS.
18701
18702
	* grub-core/boot/decompressor/none.c (grub_decompress_core): Exit
18703
	early if src == dest.
18704
	* util/grub-mkimage.c (generate_image): Arange for src == dest if
18705
	compression is none.
18706
18707
2011-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
18708
18709
	Reduce memory footprint on SGI by putting modules before the kernel
18710
	as opposed to after.
18711
18712
	* grub-core/Makefile.core.def (kernel): Increase linking address.
18713
	(none_decompress): Likewise.
18714
	(xz_decompress): Likewise.
18715
	* grub-core/boot/mips/startup_raw.S: Use prewritten uncompression
18716
	address.
18717
	* grub-core/kern/mips/arc/init.c (grub_machine_init): Handle memory
18718
	layout change.
18719
	(grub_arch_modules_addr): New function.
18720
	* grub-core/kern/mips/init.c (grub_arch_modules_addr): Moved from here...
18721
	* grub-core/kern/mips/loongson/init.c (grub_arch_modules_addr): .. here
18722
	* grub-core/kern/mips/qemu_mips/init.c (grub_arch_modules_addr): ... and
18723
	here.
18724
	* grub-core/kern/mips/startup.S (total_size): Rename to ...
18725
	(grub_total_modules_size): ... this. Make global.
18726
	[GRUB_MACHINE_ARC]: Don't attempt to move modules out of the bss.
18727
	* include/grub/offsets.h (GRUB_KERNEL_MIPS_LOONGSON_UNCOMPRESSED_ADDR):
18728
	New definition.
18729
	(GRUB_KERNEL_MIPS_QEMU_MIPS_UNCOMPRESSED_ADDR): Likewise.
18730
	(GRUB_KERNEL_MIPS_ARC_UNCOMPRESSED_ADDR): Likewise.
18731
	(GRUB_KERNEL_MACHINE_UNCOMPRESSED_ADDR): Likewise.
18732
	(GRUB_KERNEL_MIPS_ARC_LINK_ADDR): Increased.
18733
	* util/grub-mkimage.c (image_target_desc): New flag
18734
	PLATFORM_FLAGS_MODULES_BEFORE_KERNEL.
18735
	(image_targets): Set PLATFORM_FLAGS_MODULES_BEFORE_KERNEL on mips-arc.
18736
	(generate_image): Handle images with modules before kernel.
18737
18738
2011-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
18739
18740
	Prevent potential loss of memory map by overwrite on qemu-mips.
18741
18742
	* grub-core/boot/mips/startup_raw.S [GRUB_MACHINE_MIPS_QEMU_MIPS]:
18743
	Save ram size in $s4.
18744
	* grub-core/kern/mips/qemu_mips/init.c (RAMSIZE): Removed.
18745
	All users changed to grub_arch_memsize.
18746
	* grub-core/kern/mips/startup.S (grub_arch_machine): Restrict to
18747
	Loongson.
18748
	[GRUB_MACHINE_MIPS_QEMU_MIPS]: Save grub_arch_memsize.
18749
	* grub-core/loader/mips/linux.c (grub_linux_boot): Pass memory size.
18750
	* include/grub/mips/qemu_mips/memory.h (grub_arch_memsize): New
18751
	external variable.
18752
18753
2011-05-17  Colin Watson  <cjwatson@ubuntu.com>
18754
18755
	* .bzrignore: Remove grub-dumpbios.
18756
18757
2011-05-17  Colin Watson  <cjwatson@ubuntu.com>
18758
18759
	* util/grub.d/20_linux_xen.in: Honour GRUB_CMDLINE_LINUX_XEN_REPLACE
18760
	and GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT, which replace
18761
	GRUB_CMDLINE_LINUX and GRUB_CMDLINE_LINUX_DEFAULT (complementing the
18762
	existing options which append).
18763
	* docs/grub.texi (Simple configuration): Document new options.
18764
	Reported by: Ian Jackson.  Fixes Debian bug #617538.
18765
18766
2011-05-17  Colin Watson  <cjwatson@ubuntu.com>
18767
18768
	* util/grub-fstest.c (cmd_cat): New function.
18769
	(fstest): Handle CMD_CAT.
18770
	(options): Add cat.
18771
	(argp_parser): Handle cat.
18772
18773
2011-05-17  Colin Watson  <cjwatson@ubuntu.com>
18774
18775
	* Makefile.util.def (grub-bin2h): Don't install.
18776
	* docs/man/grub-bin2h.h2m: Remove.
18777
18778
2011-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
18779
18780
	* grub-core/kern/mips/startup.S (grub_arch_cpuclock): Move to the right
18781
	place.
18782
18783
2011-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
18784
18785
	Reenable qemu-mips port.
18786
18787
	* configure.ac: Handle --target=qemu-mips and --target=qemu_mips.
18788
	Fix small arc bug while on it.
18789
	* gentpl.py: Handle qemu_mips.
18790
	* grub-core/Makefile.am: Likewise.
18791
	* grub-core/Makefile.core.def: Likewise.
18792
	* grub-core/disk/ata.c [GRUB_MACHINE_MIPS_QEMU_MIPS]: Remove
18793
	inappropriate includes.
18794
	(grub_ata_pciinit) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Removed.
18795
	(grub_ata_initialize): [GRUB_MACHINE_MIPS_QEMU_MIPS]: Rewritten.
18796
	* grub-core/kern/main.c (grub_modules_get_end)
18797
	[GRUB_MACHINE_MIPS_QEMU_MIPS]: Enable.
18798
	* grub-core/kern/mips/qemu-mips: Moved to ..
18799
	* grub-core/kern/mips/qemu_mips: ... this.
18800
	* grub-core/kern/mips/qemu_mips/init.c (grub_get_rtc): Removed.
18801
	(grub_machine_init): Call terminfo_init and serial_init.
18802
	* grub-core/kern/mips/startup.S: Change MIPS_LOONGSON to MACHINE.
18803
	* grub-core/loader/mips/linux.c (params) [GRUB_MACHINE_MIPS_QEMU_MIPS]:
18804
	New variable.
18805
	(grub_linux_boot) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Handle the qemu-mips
18806
	parameter passing.
18807
	(grub_linux_unload) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Free params.
18808
	(grub_cmd_linux) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Handle params.
18809
	(grub_cmd_initrd) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Likewise.
18810
	* include/grub/mips/qemu_mips/cmos.h: New file.
18811
	* include/grub/mips/qemu-mips/kernel.h: Don't include cpu/kernel.h.
18812
	* include/grub/mips/qemu-mips/memory.h (grub_machine_mmap_iterate):
18813
	Removed.
18814
	* include/grub/mips/qemu-mips/serial.h (GRUB_MACHINE_SERIAL_PORTS):
18815
	Use correct mips-style address.
18816
	* include/grub/mips/qemu-mips/time.h: Include cpu/time.h.
18817
	(GRUB_TICKS_PER_SECOND): Removed.
18818
	(grub_get_rtc): Likewise.
18819
	(grub_cpu_idle): Likewise.
18820
	* include/grub/offsets.h (GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ADDR):
18821
	New definition.
18822
	(GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ALIGN): Likewise.
18823
	(GRUB_KERNEL_MIPS_QEMU_MIPS_COMPRESSED_SIZE): Likewise.
18824
	(GRUB_KERNEL_MIPS_QEMU_MIPS_UNCOMPRESSED_SIZE): Likewise.
18825
	(GRUB_KERNEL_MIPS_QEMU_MIPS_TOTAL_MODULE_SIZE): Likewise.
18826
	(GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX): Likewise.
18827
	(GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX_END): Likewise.
18828
	(GRUB_KERNEL_MIPS_QEMU_MIPS_MOD_ALIGN): Likewise.
18829
	* util/grub-mkimage.c (image_targets): Add mipsel-qemu_mips-elf.
18830
18831
2011-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
18832
18833
	SGI ARCS port.
18834
18835
	* Makefile.util.def (libgrubmods.a): Add dvh.c.
18836
	* conf/Makefile.common (CCASFLAGS_PLATFORM): Add -mips3 on all mips
18837
	platforms.
18838
	* configure.ac: New target mips-arc.
18839
	* gentpl.py: Likewise.
18840
	* grub-core/Makefile.am: Likewise.
18841
	* grub-core/Makefile.core.def: Likewise.
18842
	(xz_decompress): Remove -D GRUB_MACHINE_LINK_ADDR.
18843
	(none_decompress): Likewise.
18844
	(lsdev): New module.
18845
	(datetime): Use lib/arc/datetime.c on ARC.
18846
	(part_dvh): New module.
18847
	* grub-core/commands/arc/lsdev.c: New file.
18848
	* grub-core/disk/arc/arcdisk.c: Likewise.
18849
	* grub-core/kern/mips/arc/init.c: Likewise.
18850
	* grub-core/kern/mips/cache_flush.S: Don't flush non 4-byte
18851
	aligned addresses.
18852
	* grub-core/kern/mips/dl.c (grub_arch_dl_check_header): Fix bigendian
18853
	support.
18854
	(grub_arch_dl_relocate_symbols): Likewise.
18855
	* grub-core/kern/mips/loongson/init.c (grub_get_rtc): Moved from here...
18856
	* grub-core/kern/mips/init.c (grub_get_rtc): ... here.
18857
	* grub-core/kern/mips/startup.S (grub_arch_cpuclock): Have on all
18858
	platforms.
18859
	* grub-core/lib/arc/datetime.c: New file.
18860
	* grub-core/loader/mips/linux.c: Always include time.h. Don't include
18861
	pci.h on non-loongson.
18862
	(envp_off) [!GRUB_MACHINE_MIPS_LOONGSON]: Remove.
18863
	(grub_linux_boot): Set unused registers to 0.
18864
	(grub_cmd_linux) [!GRUB_MACHINE_MIPS_LOONGSON]: Remove envp.
18865
	* grub-core/mmap/mips/loongson/uppermem.c: Moved from here ...
18866
	* grub-core/mmap/mips/uppermem.c: ...here.
18867
	* grub-core/partmap/dvh.c: New file.
18868
	* grub-core/term/arc/console.c: Likewise.
18869
	* grub-core/term/terminfo.c (ANSI_C0_STR): New const.
18870
	(grub_terminfo_set_current): Add terminal "arc".
18871
	(grub_terminfo_readkey): Support ARC sequences.
18872
	* include/grub/arc/arc.h: New file.
18873
	* include/grub/arc/console.h: Likewise.
18874
	* include/grub/disk.h (grub_disk_dev_id): Add
18875
	GRUB_DISK_DEVICE_ARCDISK_ID.
18876
	* include/grub/mips/arc/kernel.h: New file.
18877
	* include/grub/mips/arc/memory.h: Likewise.
18878
	* include/grub/mips/arc/time.h: Likewise.
18879
	* include/grub/mips/loongson/kernel.h (grub_halt): Moved from here ...
18880
	* include/grub/mips/kernel.h (grub_halt): ... here.
18881
	* include/grub/mips/loongson.h (GRUB_CPU_REGISTER_WRAP): Moved from
18882
	here...
18883
	* include/grub/mips/mips.h (GRUB_CPU_REGISTER_WRAP): ... here.
18884
	(GRUB_CPU_LOONGSON_COP0_TIMER_COUNT): Moved from here ...
18885
	* include/grub/mips/mips.h (GRUB_CPU_LOONGSON_COP0_TIMER_COUNT): .. here
18886
	* include/grub/mips/loongson/kernel.h (grub_reboot): Removed redundant
18887
	proto.
18888
	* include/grub/mips/loongson/memory.h (GRUB_ARCH_LOWMEMVSTART): Moved
18889
	from here ...
18890
	* include/grub/mips/memory.h (GRUB_ARCH_LOWMEMVSTART): ... here.
18891
	(GRUB_ARCH_LOWMEMPSTART): Moved from here ...
18892
	* include/grub/mips/memory.h (GRUB_ARCH_LOWMEMPSTART): ... here.
18893
	(GRUB_ARCH_LOWMEMMAXSIZE): Moved from here ...
18894
	* include/grub/mips/memory.h (GRUB_ARCH_LOWMEMMAXSIZE): ... here.
18895
	(GRUB_ARCH_HIGHMEMPSTART): Moved from here ...
18896
	* include/grub/mips/memory.h (GRUB_ARCH_HIGHMEMPSTART): ... here.
18897
	(grub_phys_addr_t): Moved from here ...
18898
	* include/grub/mips/memory.h (grub_phys_addr_t): ... here.
18899
	(grub_vtop): Moved from here ...
18900
	* include/grub/mips/memory.h (grub_vtop): ... here.
18901
	(grub_map_memory): Moved from here ...
18902
	* include/grub/mips/memory.h (grub_map_memory): ... here.
18903
	(grub_unmap_memory): Moved from here ...
18904
	* include/grub/mips/memory.h (grub_unmap_memory): ... here.
18905
	(grub_machine_mmap_iterate): Moved from here ...
18906
	* include/grub/mips/memory.h (grub_machine_mmap_iterate): ... here.
18907
	(grub_mmap_get_lower): Moved from here ...
18908
	* include/grub/mips/memory.h (grub_mmap_get_lower): ... here.
18909
	(grub_mmap_get_upper): Moved from here ...
18910
	* include/grub/mips/memory.h (grub_mmap_get_upper): ... here.
18911
	* include/grub/mips/loongson/time.h (grub_arch_cpuclock): Moved from
18912
	here ...
18913
	* include/grub/mips/time.h (grub_arch_cpuclock): ... here.
18914
	* include/grub/mips/loongson/time.h (grub_get_rtc): Moved from
18915
	here ...
18916
	* include/grub/mips/time.h (grub_get_rtc): ... here.
18917
	* include/grub/mips/loongson/time.h (grub_arch_cpuclock): Moved from
18918
	here ...
18919
	* include/grub/mips/time.h (grub_arch_cpuclock): ... here.
18920
	* include/grub/mips/loongson/time.h (grub_cpu_idle): Moved from
18921
	here ...
18922
	* include/grub/mips/time.h (grub_cpu_idle): ... here.
18923
	* include/grub/offsets.h (GRUB_KERNEL_MIPS_ARC_LINK_ADDR): New
18924
	definition.
18925
	(GRUB_KERNEL_MIPS_ARC_LINK_ALIGN): Likewise.
18926
	(GRUB_KERNEL_MIPS_ARC_COMPRESSED_SIZE): Likewise.
18927
	(GRUB_KERNEL_MIPS_ARC_UNCOMPRESSED_SIZE): Likewise.
18928
	(GRUB_KERNEL_MIPS_ARC_TOTAL_MODULE_SIZE): Likewise.
18929
	(GRUB_KERNEL_MIPS_ARC_PREFIX): Likewise.
18930
	(GRUB_KERNEL_MIPS_ARC_PREFIX_END): Likewise.
18931
	(GRUB_KERNEL_MIPS_ARC_MOD_ALIGN): Likewise.
18932
	(GRUB_MACHINE_LINK_ADDR): Likewise.
18933
	* include/grub/terminfo.h (GRUB_TERMINFO_READKEY_MAX_LEN): Increased
18934
	to 6.
18935
	* util/grub-install.in: Run dvhtool on ARC.
18936
	* util/grub-mkimage.c (image_targets): Add mips-arc.
18937
	(generate_image): Handle ECOFF output for mips-arc.
18938
18939
2011-05-16  Vladimir Serbinenko  <phcoder@gmail.com>
18940
18941
	* grub-core/bus/pci.c (grub_memalign_dma32): Always allocate in 64-byte
18942
	blocks.
18943
18944
2011-05-16  Vladimir Serbinenko  <phcoder@gmail.com>
18945
18946
	* grub-core/bus/usb/usbhub.c (attach_root_port): Wait 10ms
18947
	after enabling port.
18948
18949
2011-05-16  Vladimir Serbinenko  <phcoder@gmail.com>
18950
18951
	Skip incorrect USB devices.
18952
18953
	* grub-core/bus/usb/usb.c (grub_usb_device_initialize): Fail if
18954
	configcnt == 0.
18955
	* include/grub/usb.h (grub_usb_err_t): New enum value
18956
	GRUB_USB_ERR_BADDEVICE.
18957
18958
2011-05-16  Vladimir Serbinenko  <phcoder@gmail.com>
18959
18960
	Fuloong video init support.
18961
18962
	* include/grub/vga.h (grub_vga_write_arx): inb monochrome address as
18963
	well.
18964
	(grub_vga_read_arx): New function.
18965
	* grub-core/video/sis315pro.c (GRUB_SIS315PRO_MMIO_SPACE): New
18966
	definition.
18967
	(framebuffer): New members io, mmioptr and mmiobase.
18968
	(read_sis_cmd): New function.
18969
	(write_sis_cmd): Likewise.
18970
	(grub_video_sis315pro_setup): Do the initialisation. Use 640x480
18971
	rather than 640x400.
18972
	* grub-core/video/sis315_init.c: New file.
18973
18974
2011-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
18975
18976
	* grub-core/bus/cs5536.c: Don't include grub/machine/kernel.h on
18977
	non-loongson.
18978
	* grub-core/kern/mips/dl.c (grub_arch_dl_init_linker): Fix argument
18979
	to grub_dl_register_symbol.
18980
18981
2011-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
18982
18983
	Fix compilation errors.
18984
18985
	* grub-core/term/ns8250.c (serial_get_divisor): Declare 'port' as
18986
	potentially unused.
18987
	* grub-core/loader/i386/linux.c (grub_linux_setup_video):
18988
	Handle GRUB_VIDEO_DRIVER_SIS315PRO.
18989
	* grub-core/bus/cs5536.c (grub_cs5536_init_geode): Restrict DIVIL init
18990
	to loongson machines.
18991
18992
2011-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
18993
18994
	Several FS mtime support.
18995
18996
	* grub-core/fs/affs.c (grub_affs_time): New struct.
18997
	(grub_affs_file): New field mtime.
18998
	(grub_fshelp_node): Changed 'block' and 'parent' to more appropriate
18999
	type. Removed 'size'. New field 'di'. All users updated.
19000
	(grub_affs_mount): Simplify checsum checking.
19001
	(grub_affs_iterate_dir): New helper grub_affs_create_node.
19002
	(grub_affs_dir): Handle mtime.
19003
	* grub-core/fs/cpio.c (grub_cpio_find_file): Handle mtime.
19004
	(grub_cpio_dir): Likewise.
19005
	* grub-core/fs/hfs.c (grub_hfs_dirrec): New fields 'ctime' and 'mtime'.
19006
	(grub_hfs_filerec): New field mtime.
19007
	(grub_hfs_dir): Handle mtime.
19008
	(grub_hfs_mtime): New function.
19009
	(grub_hfs_fs): Register grub_hfs_mtime.
19010
	* grub-core/fs/iso9660.c (grub_iso9660_date2): New struct.
19011
	(grub_iso9660_dir): New field mtime.
19012
	(grub_fshelp_node): New field dirent.
19013
	(iso9660_to_unixtime): New function.
19014
	(iso9660_to_unixtime2): Likewise.
19015
	(grub_iso9660_read_symlink): Use node->dirent.
19016
	(grub_iso9660_iterate_dir): Likewise.
19017
	(grub_iso9660_dir): Set mtime.
19018
	(grub_iso9660_mtime): New function.
19019
	(grub_iso9660_fs): Register grub_iso9660_mtime.
19020
	* grub-core/fs/jfs.c (grub_jfs_time): New struct.
19021
	(grub_jfs_inode): New fields atime, ctime and mtime.
19022
	(grub_jfs_dir): Set mtime.
19023
	* grub-core/fs/minix.c (grub_minix_dir): Likewise.
19024
	* grub-core/fs/ntfs.c (list_file): Set mtime.
19025
	(grub_ntfs_dir): Likewise.
19026
	* grub-core/fs/reiserfs.c (grub_fshelp_node): New field 'mtime'.
19027
	(grub_reiserfs_iterate_dir): Set mtime.
19028
	(grub_reiserfs_dir): Likewise.
19029
	* grub-core/fs/sfs.c (grub_sfs_obj): New field mtime.
19030
	(grub_fshelp_node): Likewise.
19031
	(grub_sfs_iterate_dir): Set mtime.
19032
	(grub_sfs_dir): Likewise.
19033
	* grub-core/fs/udf.c (grub_udf_dir): Set mtime.
19034
	* grub-core/fs/xfs.c (grub_xfs_time): New struct.
19035
	(grub_xfs_inode): New fields atime, mtime, ctime.
19036
	(grub_xfs_dir): Set mtime.
19037
	* include/grub/datetime.h (grub_datetime2unixtime): New function.
19038
	* include/grub/hfs.h (grub_hfs_sblock): New fields ctime and mtime.
19039
	* include/grub/ntfs.h (grub_fshelp_node): New field mtime.
19040
19041
	Support UDF symlinks.
19042
19043
	* grub-core/fs/udf.c (grub_udf_iterate_dir): Handle symlinks.
19044
	(grub_ufs_read_symlink): New function. All users updated.
19045
19046
	Check amiga partmap checksum.
19047
19048
	* grub-core/partmap/amiga.c (grub_amiga_rdsk): Pad to 128 bytes.
19049
	(grub_amiga_partition): Likewise.
19050
	(amiga_partition_map_checksum): New function.
19051
	(amiga_partition_map_iterate): Check checksum.
19052
19053
2011-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
19054
19055
	ROMFS support.
19056
19057
	* Makefile.util.def (libgrubmods.a): Add romfs.
19058
	* grub-core/Makefile.core.def (romfs): New module.
19059
	* grub-core/fs/romfs.c: New file.
19060
19061
2011-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
19062
19063
	Squashfs v4 support.
19064
19065
	* Makefile.util.def (libgrubmods.a): Add squash4.
19066
	* grub-core/Makefile.core.def (squash4): New module.
19067
	* grub-core/fs/squash4.c: New file.
19068
	* grub-core/io/gzio.c (grub_gzio): New members disk_input_off,
19069
	disk_input_start, disk_input.
19070
	(get_byte): Handle disk_input.
19071
	(grub_zlib_disk_read): New function.
19072
	* include/grub/deflate.h (grub_zlib_disk_read): New proto.
19073
19074
2011-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
19075
2011-05-15  Feiran Zheng <famcool@gmail.com>
19076
19077
	* Makefile.util.def (libgrubmods.a): Add minix3.
19078
	* grub-core/Makefile.core.def (minix3): New module.
19079
	* grub-core/fs/minix.c (GRUB_MINIX_MAGIC) [MODE_MINIX3]: New value.
19080
	(GRUB_MINIX_BSIZE): Removed.
19081
	(GRUB_MINIX_INODE_DIR_BLOCKS): New definition. All users updated.
19082
	(grub_minix_ino_t): New type.
19083
	(grub_minix_le_to_cpu_ino): New macro.
19084
	(GRUB_MINIX_ZONE2SECT): New definition. All users updated.
19085
	(grub_minix_sblock) [MODE_MINIX3]: Change for minix3.
19086
	(grub_minix_data): New field block_size.
19087
	(grub_minix_read_file): Handle 64-bit correctly.
19088
	* grub-core/fs/minix3.c: New file.
19089
19090
2011-05-15  Tristan Gingold  <gingold@free.fr>
19091
2011-05-15  Robert Millan  <rmh.grub@aybabtu.com>
19092
2011-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
19093
19094
	IA64 support.
19095
19096
	* Makefile.util.def (libgrubmods.a): Add grub-core/kern/ia64/dl_helper.c
19097
	* configure.ac: Add ia64-efi target.
19098
	Probe for __ia64_trampoline, __udivsi3, __umoddi3, __udivdi3,
19099
	__divsi3, __modsi3, __umodsi3, __moddi3 and __divdi3 symbols.
19100
	* gentpl.py: Add ia64_efi platform.
19101
	Rename x86_efi to efi and Add ia64-efi. All users updated.
19102
	* grub-core/Makefile.am: Set KERNEL_HEADER_FILES for ia64-efi.
19103
	* grub-core/Makefile.core.def (kernel.img): Add compile flags for ia64.
19104
	Remove kern/generic/rtc_get_time_ms.c on EFI.
19105
	Add kern/ia64/efi/startup.S, kern/ia64/efi/init.c, kern/ia64/dl.c,
19106
	kern/ia64/dl_helper.c on ia64-efi.
19107
	Add kern/emu/cache.c on emu.
19108
	(linux): Use on loader/ia64/efi/linux.c on ia64.
19109
	* grub-core/gensymlist.sh (grub_register_exported_symbols): Check
19110
	whether symbol is a function.
19111
	* grub-core/kern/dl.c [GRUB_MACHINE_EMU]: Include sys/mman.h.
19112
	(grub_symbol): New field 'isfunc'.
19113
	(grub_dl_resolve_symbol): Return whole symbol rather than just address.
19114
	(grub_dl_register_symbol): New argument 'isfunc'. All users updated.
19115
	(grub_dl_load_segments): Place all sections into the same region.
19116
	[__ia64__]: Create trampolines and got.
19117
	[GRUB_MACHINE_EMU]: Call mprotect.
19118
	(grub_dl_resolve_symbols): Resolve symbol type as well.
19119
	[__ia64__]: Create function descriptors.
19120
	* grub-core/kern/efi/efi.c (grub_get_rtc): Renamed to ...
19121
	(grub_rtc_get_time_ms): ... this. Expressions simplified.
19122
	(grub_get_rtc): New function.
19123
	* grub-core/kern/emu/cache.c [__ia64__]: New file.
19124
	* grub-core/kern/emu/cache.S: Renamed to ...
19125
	* grub-core/kern/emu/cache_s.S: ... this.
19126
	[__ia64__]: Add a nop.
19127
	* grub-core/kern/emu/full.c (grub_arch_dl_get_tramp_got_size)
19128
	[__ia64__]: New function.
19129
	* grub-core/kern/emu/lite.c [__ia64__]: Include ../ia64/dl.c.
19130
	* grub-core/kern/ia64/dl.c: New file.
19131
	* grub-core/kern/ia64/dl_helper.c: Likewise.
19132
	* grub-core/kern/ia64/efi/init.c: New file.
19133
	* grub-core/kern/ia64/efi/startup.S: Likewise.
19134
	* grub-core/lib/efi/halt.c [__ia64__]: Don't try acpi.
19135
	* grub-core/lib/ia64/longjmp.S: New file (from glibc).
19136
	* grub-core/lib/ia64/setjmp.S: Likewise (from glibc).
19137
	* grub-core/lib/setjmp.S [__ia64__]: Include ./ia64/setjmp.S.
19138
	* grub-core/loader/ia64/efi/linux.c: New file.
19139
	* include/grub/dl.h (GRUB_MOD_NAME): Redefined using C rather than asm.
19140
	(GRUB_MOD_DEP): Likewise.
19141
	(grub_dl) [__ia64__]: New fields got and tramp.
19142
	(grub_dl): New field 'base'.
19143
	(grub_dl_register_symbol): New argument isfunc. All users updated.
19144
	(GRUB_IA64_DL_TRAMP_ALIGN): New definition.
19145
	(GRUB_IA64_DL_TRAMP_SIZE): Likewise.
19146
	(GRUB_IA64_DL_GOT_ALIGN): Likewise.
19147
	(grub_ia64_dl_get_tramp_got_size): New proto.
19148
	(GRUB_ARCH_DL_TRAMP_ALIGN) [__ia64__]: Likewise
19149
	(GRUB_ARCH_DL_GOT_ALIGN) [__ia64__]: Likewise
19150
	(grub_arch_dl_get_tramp_got_size) [__ia64__]: Likewise
19151
	* include/grub/efi/api.h: Skip call wrappers on ia64.
19152
	* include/grub/efi/pe32.h (GRUB_PE32_MACHINE_IA64): New definition.
19153
	* include/grub/efi/time.h (GRUB_TICKS_PER_SECOND): Change to 1000.
19154
	* include/grub/elf.h (ELF_ST_INFO): New definition.
19155
	* include/grub/ia64/efi/kernel.h: New file.
19156
	* include/grub/ia64/efi/memory.h: Likewise.
19157
	* include/grub/ia64/efi/time.h: Likewise.
19158
	* include/grub/ia64/kernel.h: Likewise.
19159
	* include/grub/ia64/setjmp.h: Likewise (from glibc).
19160
	* include/grub/ia64/time.h: New file.
19161
	* include/grub/ia64/types.h: Likewise.
19162
	* include/grub/libgcc.h (__udivsi3, __umodsi3, __umoddi3, __udivdi3,
19163
	__moddi3, __divdi3, __divsi3, __modsi3, __ia64_trampoline):
19164
	New protos.
19165
	* include/grub/offsets.h (GRUB_KERNEL_IA64_EFI_PREFIX): New definition.
19166
	(GRUB_KERNEL_IA64_EFI_PREFIX_END): Likewise.
19167
	* include/grub/types.h (PRIxGRUB_ADDR): Likewise.
19168
	* util/grub-mkimage.c (image_target_desc): New field pe_target.
19169
	All users updated.
19170
	(EFI64_HEADER_SIZE): New definition. All users updated.
19171
	(image_targets): Add ia64-efi.
19172
	* util/grub-mkimagexx.c (relocate_symbols): New arguments jumpers and
19173
	jumpers_addr. All users updated.
19174
	Create function descriptors.
19175
	(count_funcs): New function.
19176
	(unaligned_uint32): New struct.
19177
	(MASK20): New definition.
19178
	(MASK19): Likewise.
19179
	(MASKF21): Likewise.
19180
	(add_value_to_slot_20b): New function.
19181
	(add_value_to_slot_21_real): Likewise.
19182
	(add_value_to_slot_21): Likewise.
19183
	(ia64_kernel_trampoline): New struct.
19184
	(nopm): New variable.
19185
	(jump): Likewise.
19186
	(make_trampoline): New function.
19187
	(relocate_addresses): Handle ia64.
19188
	(make_reloc_section): Likewise.
19189
	(load_image): Likewise.
19190
19191
2011-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
19192
19193
	* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Silence spurious
19194
	warning. Move variables before code while on it.
19195
19196
2011-05-15  Vladimir Serbinenko  <phcoder@gmail.com>
19197
19198
	Fuloong support.
19199
19200
	* configure.ac: Rename yeeloong platform to loongson. All users updated.
19201
	* grub-core/Makefile.core.def (fwstart_fuloong): New image.
19202
	* grub-core/boot/mips/loongson/fuloong.S: New file.
19203
	* grub-core/boot/mips/loongson/fwstart.S: Wait for CS5536 to come up.
19204
	Explicitly init CS5536.
19205
	[FULOONG]: Don't use serial until CS5536 is available.
19206
	Set GPIO based on dumps.
19207
	(serial_hw_init) [FULOONG]: Handle CS5536 parts.
19208
	[FULOONG]: Handle GPIO and memory controller differences.
19209
	Parse machine type in $a2.
19210
	* grub-core/boot/mips/startup_raw.S: Determine and save the
19211
	architecture.
19212
	* grub-core/bus/cs5536.c (gpiodump): Move to fwstart.S.
19213
	(grub_cs5536_init_geode): Remove gpio part. Conditionalise DIVIL
19214
	init on architecture type.
19215
	* grub-core/kern/mips/loongson/init.c (grub_machine_init): Init
19216
	SIS315E. Don't init at_keyboard on fuloong.
19217
	(grub_halt): Support Fuloong.
19218
	* grub-core/kern/mips/startup.S [LOONGSON]: Save $s7.
19219
	* grub-core/loader/mips/linux.c (LOONGSON_MACHTYPE): Removed.
19220
	(loongson_machtypes): New array.
19221
	(grub_cmd_linux) [GRUB_MACHINE_MIPS_LOONGSON]: Pass the right machine
19222
	type.
19223
	* grub-core/term/ns8250.c (serial_get_divisor): New parameter port and
19224
	config. All users updated. Handle CS5536 serial.
19225
	* grub-core/term/serial.c (grub_serial_register): Conditionalise
19226
	default port on machine type. Register serial as inactive.
19227
	* grub-core/video/sis315pro.c: New file.
19228
	* include/grub/cs5536.h (GRUB_CS5536_MSR_MAILBOX_CONFIG_ENABLED): New
19229
	definition.
19230
	(GRUB_CS5536_MSR_MAILBOX_CONFIG): Likewise.
19231
	(GRUB_CS5536_MSR_DIVIL_LEG_IO_UART1_COM1): Likewise.
19232
	(GRUB_CS5536_MSR_DIVIL_LEG_IO_UART2_COM3): Likewise.
19233
	(GRUB_CS5536_MSR_DIVIL_UART1_CONF): Likewise.
19234
	(GRUB_CS5536_MSR_DIVIL_UART2_CONF): Likewise.
19235
	* include/grub/mips/loongson.h (GRUB_CPU_LOONGSON_SHUTDOWN_GPIO): Rename
19236
	to ...
19237
	(GRUB_CPU_YEELOONG_SHUTDOWN_GPIO): ... this.
19238
	* include/grub/mips/loongson/kernel.h (GRUB_ARCH_MACHINE_YEELOONG): New
19239
	definition.
19240
	(GRUB_ARCH_MACHINE_FULOONG): Likewise.
19241
	(grub_arch_machine): New extern var.
19242
	* include/grub/mips/loongson/serial.h
19243
	(GRUB_MACHINE_SERIAL_DIVISOR_115200): Renamed to ...
19244
	(GRUB_MACHINE_SERIAL_PORT0_DIVISOR_115200): ... this.
19245
	(GRUB_MACHINE_SERIAL_PORT): Renamed to ...
19246
	(GRUB_MACHINE_SERIAL_PORT0): ... this.
19247
	(GRUB_MACHINE_SERIAL_PORT2_DIVISOR_115200): New definition.
19248
	(GRUB_MACHINE_SERIAL_PORT1): Likewise.
19249
	(GRUB_MACHINE_SERIAL_PORT2): Likewise.
19250
	(GRUB_MACHINE_SERIAL_PORTS): Include ports 1 and 2.
19251
	* include/grub/term.h (grub_term_register_input_inactive): New inline
19252
	function.
19253
	(grub_term_register_output_inactive): Likewise.
19254
	* include/grub/video.h (grub_video_driver_id): New value
19255
	GRUB_VIDEO_DRIVER_SIS315PRO.
19256
	* util/grub-mkimage.c (image_target_desc): Rename name to dirname.
19257
	New field "names". All users updated.
19258
	New field value IMAGE_FULOONG_FLASH.
19259
	(generate_image): USe separate fwstart hashes for yeeloong and fuloong.
19260
1.15.15 by Colin Watson
Import upstream version 1.99
19261
2011-05-14  Jordan Uggla  <jordan.uggla@gmail.com>
19262
19263
	* docs/grub.texi (Invoking grub-install): Fix additional outdated claims
19264
	and add some clarification.
19265
19266
2011-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
19267
19268
	* util/grub.d/10_linux.in: Autoload gzio since it's needed on some
19269
	platforms if kernel is compressed.
19270
19271
2011-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
19272
19273
	* grub-core/kern/mm.c (grub_memalign): Disable auto-unloadding of
19274
	unused modules since currently referrence counter isn't reliable and
19275
	there isn't much memory to recover there anyway.
19276
19277
2011-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
19278
19279
	* grub-core/kern/dl.c (grub_dl_load_file): Decrease ref counter
19280
	rather than resetting it to allow modules to reference themselves
19281
	in init.
19282
19283
2011-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
19284
19285
	* grub-core/kern/dl.c (grub_dl_unload): Don't decrease reference
19286
	counter on dependencies since grub_dl_unref already handles this.
19287
19288
2011-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
19289
19290
	* grub-core/font/font_cmd.c (loadfont_command): Set grub_errno
19291
	on error if not already done.
19292
19293
2011-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
19294
19295
	Fix few potential memory misusage.
19296
19297
	* grub-core/font/font.c (load_font_index): Don't free char_index to
19298
	avoid double free.
19299
	(grub_font_load): Zero-fill font at alloc for safety.
19300
	Close file on error.
19301
	(free_font): Free bmp_idx.
19302
19303
2011-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
19304
19305
	* docs/grub.texi (Installation): Fix several outdated claims.
19306
19307
2011-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
19308
19309
	Handle module_license on windows.
19310
19311
	* util/grub-pe2elf.c (MODLICENSE_SECTION): New definition. All following
19312
	sections shifted.
19313
	(insert_string): Make argument const char * instead of char *.
19314
	(write_section_data): Handle long section names.
19315
	Handle module_license.
19316
19317
2011-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
19318
19319
	* grub-core/commands/menuentry.c (grub_cmd_menuentry): Correctly
19320
	handle class-free menuentries.
19321
	(grub_normal_add_menu_entry): Add a check to be sure.
19322
19323
2011-05-14  Vladimir Serbinenko  <phcoder@gmail.com>
19324
19325
	* grub-core/term/at_keyboard.c (set1_e0_mapping): Fix swap between
19326
	PgUp and PgDown.
19327
19328
2011-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
19329
19330
	* configure.ac: Bump version to 1.99.
19331
19332
2011-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
19333
19334
	Give ATA device a bit more time on first try in order to allow disks
19335
	to spin up.
19336
19337
	* grub-core/disk/ata.c (grub_atapi_identify): Use GRUB_ATA_TOUT_DEV_INIT
19338
	if dev->present is 1. Reset dev->present on failure.
19339
	(grub_ata_device_initialize): Set dev->present to 1.
19340
	* include/grub/ata.h (GRUB_ATA_TOUT_DEV_INIT): New value.
19341
	(grub_ata_device): New member 'present'.
19342
19343
2011-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
19344
19345
	* util/grub-mkimage.c (generate_image): Update hash.
19346
19347
2011-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
19348
19349
	Flush caches on DMA memory.
19350
19351
	* grub-core/kern/mips/cache.S (grub_arch_sync_dma_caches): New function.
19352
	* grub-core/bus/pci.c (grub_memalign_dma32): Flush caches.
19353
	(grub_dma_free): Likewise.
19354
	* include/grub/cache.h (grub_arch_sync_dma_caches): New declaration.
19355
19356
2011-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
19357
19358
	* grub-core/boot/mips/yeeloong/fwstart.S: Add explicit set mips3
19359
	to avoid asm treating ld and sd as macros.
19360
19361
2011-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
19362
19363
	* grub-core/boot/mips/startup_raw.S: Flush cache after loading
19364
	decompressor.
19365
19366
2011-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
19367
19368
	* grub-core/boot/mips/startup_raw.S: Use jalr rather than bal to call
19369
	grub_decompress_core since later would fail if grub_decompress_core
19370
	is too far.
19371
19372
2011-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
19373
19374
	* grub-core/kern/mips/dl.c (grub_arch_dl_relocate_symbols): Handle
19375
	R_MIPS_JALR since it's used by newer compiler.
19376
19377
2011-05-10  Vladimir Serbinenko  <phcoder@gmail.com>
19378
19379
	* util/grub.d/10_linux.in: Correctly handle the Linux in root.
19380
19381
2011-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
19382
19383
	* grub-core/loader/efi/chainloader.c (grub_chainloader_unload): Set
19384
	file_path to 0 for surety.
19385
	(grub_chainloader_boot): Set exit_data to NULL.
19386
	Unset the loader once done.
19387
	(grub_cmd_chainloader): Fix confusing error message if file is empty.
19388
19389
2011-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
19390
19391
	* grub-core/term/at_keyboard.c (fetch_key): Make a printf on
19392
	unknown key into a dprintf.
19393
19394
2011-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
19395
19396
	* grub-core/kern/emu/hostdisk.c (linux_find_partition): Don't abort
19397
	on first non-existant partition.
19398
19399
2011-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
19400
19401
	* grub-core/kern/emu/hostdisk.c (open_device): Set data->fd to -1 if
19402
	openning fails.
19403
	Reported by: Mark Korenberg.
19404
19405
2011-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
19406
19407
	* grub-core/kern/emu/hostdisk.c (linux_find_partition): Prevent possible
19408
	overflow.
19409
19410
2011-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
19411
19412
	* util/grub-mkimage.c (main): Explicitely flush and sync the output
19413
	before closing to ensure that it will be readable by grub-setup.
19414
19415
2011-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
19416
19417
	* grub-core/loader/efi/appleloader.c (MAKE_PIWG_PATH): New macro.
19418
	(devpath_1): Use MAKE_PIWG_PATH.
19419
	(devpath_2): Likewise.
19420
	(devpath_3): Likewise.
19421
	(devpath_4): Likewise.
19422
	(devpath_5): Likewise.
19423
	(devpath_6): Likewise.
19424
19425
	The appleldr.mod was checked that to be binary identical to previous
19426
	version.
19427
19428
2011-05-05  Zach <mikezackles>
19429
19430
	Support 2010 Macbooks.
19431
19432
	* grub-core/loader/efi/appleloader.c (devpath_6): New variable.
19433
	(devs): Add devpath_6.
19434
19435
2011-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
19436
19437
	* util/grub-mkpasswd-pbkdf2.c (main): Use /dev/urandom and not
19438
	/dev/random. /dev/urandom is good enough for our purposes (salting).
19439
19440
2011-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
19441
19442
	* util/grub-mkrescue.in (process_input_dir): Include efiemu??.o.
19443
19444
2011-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
19445
19446
	* grub-core/lib/legacy_parse.c (grub_legacy_parse): Correctly handle
19447
	hexadecimal.
19448
19449
2011-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
19450
19451
	* grub-core/efiemu/main.c (grub_efiemu_load_file): Return grub_errno
19452
	and not 0 on failure.
19453
19454
2011-05-03  Colin Watson  <cjwatson@ubuntu.com>
19455
19456
	* grub-core/fs/i386/pc/pxe.c (grub_pxefs_dir): Return
19457
	GRUB_ERR_BAD_FS rather than GRUB_ERR_IO if the disk is not a pxe
19458
	disk; otherwise grub_fs_probe will not fall back to the next
19459
	filesystem.
19460
	(grub_pxefs_open): Likewise, for consistency.
19461
	Reported and tested by: Ezekiel Grave.
19462
19463
2011-05-03  Colin Watson  <cjwatson@ubuntu.com>
19464
19465
	* tests/partmap_test.in: Don't hardcode path to parted.
19466
	Reported by: Peter Hjalmarsson.  Fixes Savannah bug #33150.
19467
19468
2011-05-01  Colin Watson  <cjwatson@ubuntu.com>
19469
19470
	* docs/grub.texi (GRUB only offers a rescue shell): Suggest the use
19471
	of `ls' to find out which devices are available.
19472
19473
2011-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
19474
19475
	* grub-core/loader/i386/linux.c (grub_linux_boot): Supply target rather
19476
	than source address for efi mmap buffer.
19477
19478
2011-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
19479
19480
	* grub-core/partmap/amiga.c (amiga_partition_map_iterate): Fix a
19481
	wrong action on non-detecting the magic.
19482
19483
2011-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
19484
19485
	* grub-core/gnulib/regex.c: Remove GRUB_MOD_LICENSE since it's
19486
	already supplied by another part of the module (fixes compilation on
19487
	FreeBSD).
19488
19489
2011-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
19490
19491
	* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Make mdraid UUID
19492
	match the one used by mdadm.
19493
19494
2011-04-21  Colin Watson  <cjwatson@ubuntu.com>
19495
19496
	* po/README: Add instructions for creating po/LINGUAS.
19497
19498
2011-04-21  Colin Watson  <cjwatson@ubuntu.com>
19499
19500
	Add "SEE ALSO" sections to most man pages.  Fixes Debian bug
19501
	#551428.
19502
19503
	* docs/man/grub-editenv.h2m (SEE ALSO): New section.
19504
	* docs/man/grub-emu.h2m (SEE ALSO): Likewise.
19505
	* docs/man/grub-fstest.h2m (SEE ALSO): Likewise.
19506
	* docs/man/grub-install.h2m (SEE ALSO): Likewise.
19507
	* docs/man/grub-macho2img.h2m (SEE ALSO): Likewise.
19508
	* docs/man/grub-menulst2cfg.h2m (SEE ALSO): Likewise.
19509
	* docs/man/grub-mkconfig.h2m (SEE ALSO): Likewise.
19510
	* docs/man/grub-mkdevicemap.h2m (SEE ALSO): Likewise.
19511
	* docs/man/grub-mkfont.h2m (SEE ALSO): Likewise.
19512
	* docs/man/grub-mkimage.h2m (SEE ALSO): Likewise.
19513
	* docs/man/grub-mklayout.h2m (SEE ALSO): Likewise.
19514
	* docs/man/grub-mknetdir.h2m (SEE ALSO): Likewise.
19515
	* docs/man/grub-mkpasswd-pbkdf2.h2m (SEE ALSO): Likewise.
19516
	* docs/man/grub-mkrelpath.h2m (SEE ALSO): Likewise.
19517
	* docs/man/grub-mkrescue.h2m (SEE ALSO): Likewise.
19518
	* docs/man/grub-ofpathname.h2m (SEE ALSO): Likewise.
19519
	* docs/man/grub-pe2elf.h2m (SEE ALSO): Likewise.
19520
	* docs/man/grub-probe.h2m (SEE ALSO): Likewise.
19521
	* docs/man/grub-reboot.h2m (SEE ALSO): Likewise.
19522
	* docs/man/grub-script-check.h2m (SEE ALSO): Likewise.
19523
	* docs/man/grub-set-default.h2m (SEE ALSO): Likewise.
19524
	* docs/man/grub-setup.h2m (SEE ALSO): Likewise.
19525
19526
2011-04-21  Colin Watson  <cjwatson@ubuntu.com>
19527
19528
	* grub-core/kern/emu/getroot.c
19529
	(grub_find_root_device_from_mountinfo): Remove non-virtual-device
19530
	test that was incorrectly reintroduced in r3214.
19531
	Reported by: Ian Dall.  Fixes Savannah bug #33133.
19532
19533
2011-04-21  Colin Watson  <cjwatson@ubuntu.com>
19534
19535
	Fix stack pointer handling in 16-bit relocator.
19536
19537
	* grub-core/lib/i386/relocator16.S (grub_relocator16_start): Move
19538
	grub_relocator16_sp to %esp rather than %ss, and zero-extend it.
19539
	Fixes Ubuntu bug #683904.
19540
19541
2011-04-20  Vladimir Serbinenko  <phcoder@gmail.com>
19542
19543
	* configure.ac: Bump version to 1.99~rc2.
19544
19545
2011-04-20  Vladimir Serbinenko  <phcoder@gmail.com>
19546
19547
	* include/grub/dl.h [ASM_FILE]: Adapt for assembly.
19548
	* grub-core/lib/i386/setjmp.S: Add missing GRUB_MOD_LICENSE.
19549
	* grub-core/lib/x86_64/setjmp.S: Likewise.
19550
	* grub-core/lib/mips/setjmp.S: Likewise.
19551
	* grub-core/lib/powerpc/setjmp.S: Likewise.
19552
	* grub-core/lib/sparc64/setjmp.S: Likewise.
19553
19554
2011-04-20  Vladimir Serbinenko  <phcoder@gmail.com>
19555
19556
	* grub-core/lib/efi/datetime.c: Add missing GRUB_MOD_LICENSE.
19557
	* grub-core/lib/efi/datetime.c: Likewise.
19558
19559
2011-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
19560
19561
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_flush):
19562
	New function.
19563
	(grub_util_biosdisk_close): Use grub_util_biosdisk_flush.
19564
	* include/grub/emu/hostdisk.h (grub_util_biosdisk_flush): New proto.
19565
	* util/grub-setup.c (setup): Use grub_util_biosdisk_flush.
19566
19567
2011-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
19568
19569
	* grub-core/term/gfxterm.c (grub_gfxterm_fullscreen): Preserve previous
19570
	bitmap.
19571
	(grub_gfxterm_term_init): Likewise.
19572
19573
2011-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
19574
19575
	Take into account the decorations the computing menu entry width.
19576
19577
	* grub-core/gfxmenu/widget-box.c (get_border_width): New function.
19578
	(grub_gfxmenu_create_box): Register get_border_width.
19579
	* grub-core/gfxmenu/gui_list.c (draw_menu): Use get_border_width
19580
	if available.
19581
	* include/grub/gfxwidgets.h (grub_gfxmenu_box): New member
19582
	get_border_width.
19583
19584
2011-04-18  Endres Puschner <code@e7p.de>
19585
19586
	* grub-core/gfxmenu/icon_manager.c (grub_gfxmenu_icon_manager_get_icon):
19587
	Don't skip first class.
19588
19589
2011-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
19590
19591
	* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Support huge
19592
	chunks.
19593
	* include/grub/err.h (grub_err_t): New enum value GRUB_ERR_BUG.
19594
19595
2011-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
19596
19597
	Complete 64-bit division support.
19598
19599
	* grub-core/kern/misc.c (grub_divmod64): Rename to ...
19600
	(grub_divmod64_full): ... this. Support 64-bit divisor and reminder.
19601
	* include/grub/misc.h (grub_divmod64): Rename to ...
19602
	(grub_divmod64_full): ... this.
19603
	(grub_divmod64): New inline function.
19604
19605
2011-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
19606
19607
	* util/grub-mkimage.c (generate_image): Add forgotten comma.
19608
19609
2011-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
19610
19611
	* util/grub-mkimage.c (generate_image): Update fwstart.img hash after
19612
	performing the necessary test.
19613
19614
2011-04-17  Vladimir Serbinenko  <phcoder@gmail.com>
19615
19616
	* Makefile.am (multiboot.elf): Add -Wl,--build-id=none.
19617
	(kfreebsd.elf): Likewise.
19618
	(pc-chainloader.elf): Likewise.
19619
	(ntldr.elf): Likewise.
19620
19621
2011-04-17  Vladimir Serbinenko  <phcoder@gmail.com>
19622
19623
	Identify RAID by its UUID rather than (guessed) name.
19624
19625
	* grub-core/disk/raid.c (ascii2hex): New function.
19626
	(grub_raid_open): Accept mduuid/%s specification.
19627
	* grub-core/kern/emu/getroot.c (get_mdadm_name): Revamped into ...
19628
	(get_mdadm_uuid): ... this.
19629
	(grub_util_get_grub_dev): Use mduuid/%s if UUID is available.
19630
19631
2011-04-16  Vladimir Serbinenko  <phcoder@gmail.com>
19632
19633
	* grub-core/gfxmenu/gui_image.c (rescale_image): Don't attempt to scale
19634
	to negative size.
19635
19636
2011-04-13  Colin Watson  <cjwatson@ubuntu.com>
19637
19638
	* util/grub.d/10_linux.in: Add rootflags=subvol=<name> if / is on a
19639
	btrfs subvolume.
19640
	* util/grub.d/20_linux_xen.in: Likewise.
19641
19642
2011-04-13  Colin Watson  <cjwatson@ubuntu.com>
19643
19644
	Rewrite /proc/self/mountinfo handling to cope with bind-mounts and
19645
	move-mounts appearing out of order.  Fixes Ubuntu bug #738345.
19646
19647
	* grub-core/kern/emu/getroot.c (find_root_device_from_mountinfo):
19648
	Build a list of relevant visible mounts using the mnt_id and
19649
	parent_mnt_id fields, and then scan that list at the end.
19650
19651
2011-04-12  Colin Watson  <cjwatson@ubuntu.com>
19652
19653
	* docs/grub.texi (normal): New section.
19654
	(normal_exit): New section.
19655
	(Embedded configuration): Add reference to normal.
19656
	(GRUB only offers a rescue shell): Likewise.
19657
	* docs/grub-dev.texi (Error Handling): Fix typo.
19658
19659
2011-04-12  Colin Watson  <cjwatson@ubuntu.com>
19660
19661
	* NEWS: Drop obsolete entry about probe-only btrfs support.
19662
19663
2011-04-12  Colin Watson  <cjwatson@ubuntu.com>
19664
19665
	* util/import_gcry.py: Fix typo.
19666
19667
2011-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
19668
19669
	* NEWS: Add btrfs support.
19670
19671
2011-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
19672
2011-04-11  Colin Watson  <cjwatson@ubuntu.com>
19673
19674
	BtrFS support. Written by me (Vladimir) with important bugfixes and
19675
	even more important testing by Colin.
19676
19677
	* Makefile.util.def (libgrubmods.a): Add crc.c and gzio.c
19678
	* grub-core/Makefile.core.def (btrfs): Add crc.c.
19679
	* grub-core/fs/btrfs.c: Stub replaced with real implementation.
19680
	* grub-core/io/gzio.c (grub_gzio): New fields mem_input_size,
19681
	mem_input_off and mem_input. All users updated to accept in-RAM input.
19682
	(gzio_seek): New function.
19683
	(test_zlib_header): Likewise.
19684
	(grub_gzio_read): Likewise.
19685
	(grub_zlib_decompress): Likewise.
19686
	* grub-core/kern/emu/getroot.c (grub_find_root_device_from_mountinfo):
19687
	Accept partial and non-virtual mounts.
19688
	(grub_guess_root_device): Do rescanning after device_from_mountinfo to
19689
	avoid receiving /dev/dm-X as device.
19690
	* grub-core/kern/emu/misc.c (grub_make_system_path_relative_to_its_root):
19691
	Handle bind and partial mounts.
19692
	* grub-core/lib/crc.c: New file.
19693
	* include/grub/deflate.h: Likewise.
19694
	* include/grub/emu/misc.h (grub_find_root_device_from_mountinfo): New
19695
	proto.
19696
	* include/grub/lib/crc.h: New file.
19697
19698
2011-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
19699
19700
	Implement automatic module license checking according to new GNU
19701
	guidelines.
19702
19703
	* grub-core/kern/dl.c (grub_dl_check_license): New function.
19704
	(grub_dl_load_core): Use grub_dl_check_license.
19705
	* include/grub/dl.h (GRUB_MOD_SECTION): New macro.
19706
	(GRUB_MOD_LICENSE): Likewise.
19707
	(GRUB_MOD_DUAL_LICENSE): Likewise.
19708
	All modules updated.
19709
19710
2011-04-11  Colin Watson  <cjwatson@ubuntu.com>
19711
19712
	* grub-core/fs/btrfs.c (grub_btrfs_fs) [GRUB_UTIL]: Set
19713
	reserved_first_sector to 1.  btrfs reserves plenty of space for boot
19714
	loaders.
19715
	Reported by: Gene Cumm.  Fixes Ubuntu bug #757446.
19716
19717
2011-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
19718
19719
	* util/grub-fstest.c (cmd_cmp): Check that sizes match.
19720
19721
2011-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
19722
19723
	* util/grub-fstest.c (read_file): Report GRUB error if file opening
19724
	failed.
19725
19726
2011-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
19727
19728
	* grub-core/kern/file.c (grub_file_open): Don't take into account the
19729
	parenthesis in the middle of the filename.
19730
19731
2011-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
19732
19733
	* grub-core/loader/mips/linux.c (grub_cmd_initrd): Use correct limits
19734
	rather than trying to put initrd way too high.
19735
	Reported by: Ryan Lortie <desrt@desrt.ca>
19736
19737
2011-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
19738
19739
	* grub-core/boot/mips/yeeloong/fwstart.S (no_cs5536): Put back
19740
	improperly removed string.
19741
19742
2011-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
19743
19744
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_data): New member
19745
	is_disk.
19746
	(grub_util_biosdisk_open): Don't apply ioctl on non-disk devices.
19747
	(open_device) Likewise.
19748
	(grub_util_biosdisk_close): Likewise.
19749
	Reported by: Mark Korenberg.
19750
19751
2011-04-10  Alexander Kurtz <kurtz.alex@googlemail.com>
19752
19753
	* util/grub-mkconfig_lib.in: Add missing quotes.
19754
19755
2011-04-10  Colin Watson  <cjwatson@ubuntu.com>
19756
19757
	* grub-core/gnulib/argp-parse.c (__argp_input): Don't crash if pstate
19758
	is NULL.
19759
19760
2011-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
19761
19762
	Dynamically count the number of lines for the lower banner.
19763
19764
	* grub-core/normal/menu_entry.c (per_term_screen): New member
19765
	num_entries.
19766
	(print_down): Use num_entries.
19767
	(update_screen): Likewise.
19768
	(grub_menu_entry_run): Set num_entries.
19769
	* grub-core/normal/menu_text.c (menu_viewer_data): New member
19770
	num_entries.
19771
	(grub_print_message_indented): Move real part to ...
19772
	(grub_print_message_indented_real): ... here. Additional argument
19773
	dry_run.
19774
	(draw_border): Additional argument num_entries.
19775
	(print_message): Additional argument dry_run.
19776
	(print_entries): Receive menu viewer data.
19777
	(grub_menu_init_page): New argment num_entries.
19778
	(menu_text_set_chosen_entry): Use num_entries.
19779
	(grub_menu_try_text): Likewise.
19780
	* grub-core/normal/term.c (print_ucs4_terminal): New argument dry_run.
19781
	All users updated.
19782
	(grub_ucs4_count_lines): New function.
19783
	* include/grub/term.h (grub_term_cursor_x): Moved from here ..
19784
	* grub-core/normal/menu_text.c (grub_term_cursor_x): ... to here.
19785
	* include/grub/term.h (GRUB_TERM_MESSAGE_HEIGHT): Removed.
19786
	(grub_term_border_height): Likewise.
19787
	(grub_term_num_entries): Likewise.
19788
19789
2011-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
19790
19791
	* grub-core/boot/mips/yeeloong/fwstart.S: Fix address to error message.
19792
	Remove now unused string.
19793
19794
2011-04-09  Colin Watson  <cjwatson@ubuntu.com>
19795
19796
	* docs/grub-dev.texi (Finding your way around): Update for 1.99
19797
	build system.
19798
	(Getting started): GRUB is developed in Bazaar now, not Subversion.
19799
19800
	(Comment): Fix typo.
19801
	(Getting started): General copy-editing.
19802
	(Typical Development Experience): Likewise.
19803
	(Error Handling): Likewise.
19804
	(Video API): Likewise.
19805
19806
2011-04-09  Colin Watson  <cjwatson@ubuntu.com>
19807
19808
	* docs/grub-dev.texi: Replace MoinMoin syntax with Texinfo syntax
19809
	throughout.
19810
19811
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19812
19813
	* util/grub-mkimage.c (main): Handle special naming of yeeloong
19814
	directory.
19815
19816
2011-04-08  Colin Watson  <cjwatson@ubuntu.com>
19817
19818
	* docs/grub-dev.texi: Fix spelling of "developer" throughout.
19819
	* grub-core/fs/i386/pc/pxe.c (parse_dhcp_vendor): Fix spelling of
19820
	"development".
19821
19822
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19823
19824
	* grub-core/normal/menu_entry.c (run): Use grub_memcpy rather than
19825
	grub_strcpy since the lines aren't necessarily 0-terminated.
19826
19827
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19828
19829
	* grub-core/lib/legacy_parse.c (legacy_commands): Find doesn't set
19830
	root on legacy.
19831
19832
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19833
19834
	* grub-core/commands/probe.c (options): Argument to set isn't optional.
19835
	(GRUB_MOD_INIT): DEVICE isn't optional.
19836
19837
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19838
19839
	* grub-core/normal/term.c (print_ucs4_terminal): Don't try to put the
19840
	word on new line if it's too long anyway. Fixes a hang.
19841
19842
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19843
19844
	* include/grub/util/raid.h (grub_util_raid_getmembers): Make argument
19845
	const.
19846
	* util/grub-setup.c (main): Reuse md device name if available.
19847
	* util/raid.c (grub_util_raid_getmembers): Receive device name and
19848
	not GRUB name as argument.
19849
	Based on patch by: Florian Wagner <fwagner>.
19850
19851
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19852
19853
	* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi):
19854
	Place mbi on low memory for better compatibility.
19855
19856
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19857
19858
	* include/grub/efiemu/efiemu.h: Use grub_memory_hook_t type.
19859
19860
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19861
2011-04-08  Colin Watson  <cjwatson@ubuntu.com>
19862
19863
	* autogen.sh: Ensure that collate and ctype locale is C.
19864
	* conf/Makefile.common: Likewise.
19865
19866
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19867
19868
	* grub-core/normal/menu.c: Add missing include.
19869
19870
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19871
19872
	* grub-core/disk/raid.c [GRUB_UTIL]: Add missing include.
19873
19874
2011-04-08  Martin Zuther <mzuther@mzuther.de>
19875
19876
	* util/grub-mkconfig.in: Ignore emacsen backup.
19877
19878
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19879
19880
	* grub-core/kern/emu/hostdisk.c (open_device): Sync on close and not
19881
	on open.
19882
	(grub_util_biosdisk_close): Likewise.
19883
19884
2011-04-08  Vladimir Serbinenko  <phcoder@gmail.com>
19885
19886
	* grub-core/kern/emu/getroot.c (grub_util_get_grub_dev): Add missing
19887
	const attribute and use grub_isdigit.
19888
19889
2011-04-06  Andrey  <dev_null@ukr.net>
19890
19891
	* grub-core/video/fb/video_fb.c (grub_video_fb_setup): Silence older
19892
	gcc warning.
19893
19894
2011-04-06  Vladimir Serbinenko  <phcoder@gmail.com>
19895
19896
	* grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align): Add few
19897
	useful grub_dprintf's.
19898
19899
2011-04-06  Vladimir Serbinenko  <phcoder@gmail.com>
19900
19901
	* include/grub/fs.h (grub_dirhook_info): Use unsigned for 1-bit fields.
19902
19903
2011-04-06  Vladimir Serbinenko  <phcoder@gmail.com>
19904
19905
	* util/grub.d/00_header.in: Don't use LANG unless unifont is available.
19906
19907
2011-04-06  Vladimir Serbinenko  <phcoder@gmail.com>
19908
19909
	Output errors if theme loading failed.
19910
19911
	* grub-core/gfxmenu/gfxmenu.c (grub_gfxmenu_try): Move the call to
19912
	grub_gfxterm_fullscreen on error paths to ...
19913
	* grub-core/normal/menu.c (menu_init): ...here. Wait after showing
19914
	theme loading error.
19915
19916
2011-04-06  Vladimir Serbinenko  <phcoder@gmail.com>
19917
19918
	* include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): Let a bit more
19919
	space for older compilers.
19920
	(GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise.
19921
19922
2011-04-06  Vladimir Serbinenko  <phcoder@gmail.com>
19923
19924
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Detect spares
19925
	and report them as not RAID members since they are useless for GRUB.
19926
	* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
19927
19928
2011-04-02  Vladimir Serbinenko  <phcoder@gmail.com>
19929
19930
	Increase LVM implementation robustness in order not to crash on
19931
	configurations like pvmove. Previously code assumed that in some places
19932
	only lvs or only pvs are used whereas it seems that they are used
19933
	interchangeably.
19934
19935
	* grub-core/disk/lvm.c (read_node): New function.
19936
	(read_lv): Use read_node.
19937
	(grub_lvm_scan_device): Use only first mirror on pvmove'd lvs.
19938
	Match volumes only at the end when all lvs are found. Take both
19939
	pvs (first) and lvs (second) into account.
19940
	* include/grub/lvm.h (grub_lvm_segment): Merge fields stripe_* and
19941
	mirror_* into node_*. All users updated.
19942
	(grub_lvm_stripe): Merge this ...
19943
	(grub_lvm_mirror): ... and this ...
19944
	(grub_lvm_node): ... into this. All users updated.
19945
19946
2011-04-02  Vladimir Serbinenko  <phcoder@gmail.com>
19947
19948
	* grub-core/disk/lvm.c (grub_lvm_scan_device): Print errors on the end
19949
	of function to allow further scanning for LVMs.
19950
19951
2011-04-02  Vladimir Serbinenko  <phcoder@gmail.com>
19952
19953
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_read): Don't close
19954
	on failed seek as it breaks open fd reusage.
19955
19956
2011-04-02  Vladimir Serbinenko  <phcoder@gmail.com>
19957
19958
	* util/grub-install.in: Add a recommendation to use --recheck before
19959
	reporting bugs.
19960
19961
2011-04-02  Vladimir Serbinenko  <phcoder@gmail.com>
19962
19963
	* docs/grub.texi (Vendor power-on buttons): Explain how the numbers
19964
	are obtained.
19965
19966
2011-04-02  Vladimir Serbinenko  <phcoder@gmail.com>
19967
19968
	GRUB developper manual based on existing Internals section and
19969
	contributions by the various authors with active copyright assignment.
19970
19971
	* docs/Makefile.am (info_TEXINFOS): Add grub-dev.texi.
19972
	* docs/font_char_metrics.png: New file.
19973
	* docs/font_char_metrics.txt: Likewise.
19974
	* docs/grub-dev.texi: Likewise.
19975
	* docs/grub.texi (Internals): Move from here ...
19976
	* docs/grub-dev.texi: ... here.
19977
19978
2011-04-01  Colin Watson  <cjwatson@ubuntu.com>
19979
19980
	Store the loopback device as data on loopback grub_disk structures,
19981
	rather than the file it points to.  This fixes use of freed memory
19982
	if an existing loopback device is replaced.
19983
19984
	* grub-core/disk/loopback.c (grub_loopback_open): Store dev in
19985
	disk->data, not dev->file.
19986
	(grub_loopback_read): Adjust file assignment to match.
19987
	Fixes Ubuntu bug #742967.
19988
19989
2011-04-01  Colin Watson  <cjwatson@ubuntu.com>
19990
19991
	* grub-core/disk/loopback.c (grub_cmd_loopback): Fix a memory leak
19992
	when replacing an existing device.
19993
19994
2011-04-01  Vladimir Serbinenko  <phcoder@gmail.com>
19995
19996
	Fix incorrect types in jfs.c. This enables >2TiB disks and fixes some
19997
	memory corruptions.
19998
19999
	* grub-core/fs/jfs.c (struct grub_jfs_diropen): Interpret bytes as
20000
	unsigned.
20001
	(grub_jfs_lookup_symlink): Make ino a grub_uint32_t rather than int.
20002
	(grub_jfs_blkno): Use 64-bit quantities for block sectors.
20003
	(grub_jfs_read_inode): Likewise.
20004
	(grub_jfs_opendir): Likewise. Remove now useless casts.
20005
	(grub_jfs_getent): Likewise.
20006
	Make ino a grub_uint32_t rather than int.
20007
	(grub_jfs_mount): Ensure that blksize and log2_blksize are consistent.
20008
	(grub_jfs_read_file): Use 64-bit quantities when necessary. Replace
20009
	division and module with bit operations.
20010
	(grub_jfs_find_file): Make ino a grub_uint32_t.
20011
	(grub_jfs_lookup_symlink): Likewise. Use 64-bit quantities
20012
20013
2011-04-01  Colin Watson  <cjwatson@ubuntu.com>
20014
20015
	* grub-core/normal/menu_entry.c (run): Quieten uninitialised
20016
	  warning.  (This was in fact always initialised before use, but GCC
20017
	  wasn't smart enough to prove that.)
20018
	* grub-core/script/lexer.c (grub_script_lexer_yywrap): Likewise.
20019
20020
2011-03-31  Vladimir Serbinenko  <phcoder@gmail.com>
20021
20022
	* grub-core/kern/x86_64/efi/callwrap.S (efi_wrap_0): Preserve 16-byte
20023
	stack alignment.
20024
	(efi_wrap_1): Likewise.
20025
	(efi_wrap_2): Likewise.
20026
	(efi_wrap_3): Likewise.
20027
	(efi_wrap_4): Likewise.
20028
	(efi_wrap_5): Likewise.
20029
	(efi_wrap_6): Likewise.
20030
	(efi_wrap_10): Likewise.
20031
	Based on information by: Red Hat/Peter Jones.
20032
20033
2011-03-31  Colin Watson  <cjwatson@ubuntu.com>
20034
20035
	* grub-core/mmap/efi/mmap.c (grub_mmap_unregister): Remove
20036
	set-but-not-used variable.
20037
20038
2011-03-31  Colin Watson  <cjwatson@ubuntu.com>
20039
20040
	* docs/grub.texi (Simple configuration): Be more explicit about
20041
	GRUB_DEFAULT, and add an example.
20042
	Reported by: Leslie Rhorer.
20043
20044
2011-03-30  Colin Watson  <cjwatson@ubuntu.com>
20045
20046
	* docs/grub.texi (Commands): Link to "GRUB only offers a rescue
20047
	shell".
20048
20049
2011-03-30  Alexey Shvetsov <alexxy@gentoo.org>
20050
20051
	* util/grub.d/10_linux.in: Add gentoo-specific config filename.
20052
	* util/grub.d/20_linux_xen.in: Likewise.
20053
20054
2011-03-30  Vladimir Serbinenko  <phcoder@gmail.com>
20055
20056
	* util/grub.d/10_linux.in: Try alternative config filenames where
20057
	we parse config file.
20058
	* util/grub.d/20_linux_xen.in: Likewise.
20059
20060
2011-03-30  Alexey Shvetsov <alexxy@gentoo.org>
20061
20062
	* util/grub.d/10_linux.in: Add gentoo-specific Linux and initrd names.
20063
	* util/grub.d/20_linux_xen.in: Likewise.
20064
20065
2011-03-30  Vladimir Serbinenko  <phcoder@gmail.com>
20066
20067
	* grub-core/disk/raid.c (insert_array): Add few potentially
20068
	useful grub_util_info.
20069
	(grub_raid_register): Likewise.
20070
20071
2011-03-30  Vladimir Serbinenko  <phcoder@gmail.com>
20072
20073
	* grub-core/kern/emu/getroot.c (grub_util_get_grub_dev) [__linux__]:
20074
	Preserve partition number in mdadm code path.
20075
20076
2011-03-30  Vladimir Serbinenko  <phcoder@gmail.com>
20077
20078
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Add
20079
	few potentially useful grub_util_info.
20080
20081
2011-03-30  Vladimir Serbinenko  <phcoder@gmail.com>
20082
20083
	* grub-core/disk/lvm.c (grub_lvm_scan_device): Remove spurious \n.
20084
20085
2011-03-30  Colin Watson  <cjwatson@ubuntu.com>
20086
20087
	* docs/grub.texi (default): Use @example rather than nested
20088
	itemized lists to avoid breaking gendocs.
20089
20090
2011-03-30  Colin Watson  <cjwatson@ubuntu.com>
20091
20092
	* docs/grub.texi (Future): Update.
20093
20094
2011-03-30  Colin Watson  <cjwatson@ubuntu.com>
20095
20096
	* docs/grub.texi (Environment): New chapter.
20097
	(Changes from GRUB Legacy): Link to "Environment block" section for
20098
	details of limitations.
20099
	(Simple configuration): Likewise.  Link to documentation of gfxmode
20100
	and gfxpayload variables from GRUB_GFXMODE and GRUB_GFXPAYLOAD
20101
	respectively.
20102
	(Shell-like scripting): Note that normal variables are stored in the
20103
	environment.
20104
	(gettext): Link to documentation of lang and locale_dir.
20105
	(list_env): New section.
20106
	(load_env): New section.
20107
	(save_env): New section.
20108
20109
	(Reporting bugs): Fix typo.
20110
20111
2011-03-30  Vladimir Serbinenko  <phcoder@gmail.com>
20112
20113
	* docs/grub.texi: Correctly use "terminal_input" and not "terminal" in
20114
	the example.
20115
20116
2011-03-30  Vladimir Serbinenko  <phcoder@gmail.com>
20117
20118
	* grub-core/term/at_keyboard.c (set_scancodes)
20119
	[!GRUB_MACHINE_MIPS_YEELOONG && !GRUB_MACHINE_QEMU]: Use scancode set 1.
20120
20121
2011-03-30  Colin Watson  <cjwatson@ubuntu.com>
20122
20123
	* docs/grub.texi (Menu-specific commands): Remove some semantics
20124
	that were true in GRUB Legacy but not in GRUB 2.
20125
	(submenu): New section.
20126
	(false): New section.
20127
	(read): New section.
20128
	(true): New section.
20129
20130
2011-03-30  Colin Watson  <cjwatson@ubuntu.com>
20131
20132
	* docs/grub.texi (Changes from GRUB Legacy): Minor proofreading.
20133
20134
2011-03-30  Colin Watson  <cjwatson@ubuntu.com>
20135
20136
	* docs/grub.texi (Simple configuration): Explain some of the
20137
	current limitations of grub-mkconfig.
20138
	Reported by: Leslie Rhorer.
20139
20140
2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
20141
20142
	Old macs search for boot.efi rather than for bootia32.efi.
20143
20144
	* util/grub-install.in: Copy bootia32.efi to boot.efi.
20145
	* util/grub-mkrescue.in: Likewise.
20146
	Suggested by: Peter Jones.
20147
20148
2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
20149
20150
	* util/grub.d/20_linux_xen.in: Accept old-style xen kernels.
20151
20152
2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
20153
20154
	* include/grub/lvm.h (grub_lvm_lv): New field 'visible'.
20155
	(grub_lvm_segment): New fields 'type', 'mirror_count' and 'mirrors'.
20156
	(grub_lvm_mirror): New struct.
20157
	* grub-core/disk/lvm.c (grub_lvm_checkvalue): Commented out.
20158
	(grub_lvm_iterate): Iterate only visible volumes.
20159
	(grub_lvm_read): Factor out to ..
20160
	(read_lv): ... this. Support mirrors.
20161
	(grub_lvm_read): New wrapper function.
20162
	(grub_lvm_scan_device): Parse mirrors. Skip everything that isn't
20163
	stripped or mirrored.
20164
20165
2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
20166
20167
	* util/grub.d/10_linux.in: Skip vmlinux-* on x86 platforms.
20168
20169
2011-03-29  Colin Watson  <cjwatson@ubuntu.com>
20170
20171
	* docs/grub.texi (loopback): New section.
20172
20173
2011-03-29  Colin Watson  <cjwatson@ubuntu.com>
20174
20175
	* grub-core/disk/loopback.c (GRUB_MOD_INIT): Stop documenting
20176
	removed -p option.
20177
20178
2011-03-29  Colin Watson  <cjwatson@ubuntu.com>
20179
20180
	* docs/grub.texi (BIOS installation): New section, partly based on
20181
	previous text in other sections.
20182
	(Installing GRUB using grub-install): Replace BIOS discussion with a
20183
	cross-reference.
20184
	(Images): Likewise.
20185
20186
2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
20187
20188
	* grub-core/kern/emu/hostdisk.c (find_partition_start)
20189
	[HAVE_DIOCGDINFO]: Add safety checks.
20190
20191
2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
20192
20193
	* util/grub.d/10_kfreebsd.in: Allow ufs.ko to be missing as it's
20194
	per default compiled in kernel and prior to 8.0 isn't shipped at all.
20195
20196
2011-03-29  Colin Watson  <cjwatson@ubuntu.com>
20197
20198
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): If
20199
	real_sb->size is zero (e.g. RAID-0), get the disk size from
20200
	real_sb->data_size instead.
20201
	Fixes Ubuntu bug #743136.
20202
20203
2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
20204
20205
	* grub-core/normal/misc.c (grub_normal_print_device_info): Use correct
20206
	printf clauses for printing size and start.
20207
20208
2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
20209
20210
	* grub-core/fs/ext2.c (grub_ext2_read_inode): Fix an overflow.
20211
	Reported and tested by: Timothy Nikkel.
20212
20213
2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
20214
20215
	* grub-core/term/gfxterm.c (dirty_region_add): Move core part to ...
20216
	(dirty_region_add_real): ... this.
20217
	(dirty_region_add): Don't discard margin refresh when performing
20218
	scheduled repaint.
20219
20220
2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
20221
20222
	* grub-core/lib/relocator.c (allocate_regstart)
20223
	[!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Avoid grub_dprintf since not all
20224
	terminals are capabple of malloc-free operation.
20225
	(allocate_inreg) [!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Likewise.
20226
	(malloc_in_range) [!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Likewise.
20227
20228
2011-03-29  Mario Limonciello  <Mario_Limonciello@Dell.com>
20229
20230
        * util/grub-setup.c: Copy the partition table zone if floppy support
20231
	is disabled, even if no partition table is found.
20232
20233
        Otherwise, the BIOS on Dell Latitude E series laptops will freeze
20234
        during POST if an invalid partition table is contained in the PBR
20235
        of the active partition when GRUB is installed to a partition.
20236
20237
2011-03-28  Colin Watson  <cjwatson@debian.org>
20238
20239
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Remove stale
20240
	comment.
20241
20242
2011-03-28  Colin Watson  <cjwatson@debian.org>
20243
20244
	* grub-core/disk/raid.c (grub_raid_register): Adjust debug message
20245
	to be specific about what kind of RAID device we're scanning for.
20246
20247
2011-03-26  Seth Goldberg <seth.goldberg@oracle.com>
20248
20249
	* grub-core/kern/emu/getroot.c (find_root_device_from_libzfs): Don't
20250
	return freed string.
20251
20252
2011-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
20253
20254
	* grub-core/fs/iso9660.c (grub_iso9660_label): Rtrim the label.
20255
20256
2011-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
20257
20258
	Use libgeom on FreeBSD to detect partitions.
20259
20260
	* Makefile.util.def (grub-mkimage): Add LIBGEOM to ldadd.
20261
	(grub-mkrelpath): Likewise.
20262
	(grub-script-check): Likewise.
20263
	(grub-editenv): Likewise.
20264
	(grub-mkpasswd-pbkdf2): Likewise.
20265
	(grub-fstest): Likewise.
20266
	(grub-mkfont): Likewise.
20267
	(grub-mkdevicemap): Likewise.
20268
	(grub-probe): Likewise.
20269
	(grub-setup): Likewise.
20270
	(grub-ofpathname): Likewise.
20271
	(grub-mklayout): Likewise.
20272
	(example_unit_test): Likewise.
20273
	(grub-menulst2cfg): Likewise.
20274
	* grub-core/Makefile.core.def (grub-emu): Likewise.
20275
	(grub-emu-lite): Likewise.
20276
	* configure.ac: Check for -lgeom on FreeBSD and set LIBGEOM.
20277
	* grub-core/kern/emu/hostdisk.c [FreeBSD]: Include libgeom.h. Don't
20278
	define HAVE_DIOCGDINFO.
20279
	(follow_geom_up) [FreeBSD]: New function.
20280
	(find_partition_start) [FreeBSD]: Rewritten using follow_geom_up.
20281
	(convert_system_partition_to_system_disk) [FreeBSD]: Likewise.
20282
	(grub_util_biosdisk_get_grub_dev) [FreeBSD]: Use FreeBSD path
20283
	unconditionally of HAVE_DIOCGDINFO.
20284
20285
2011-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
20286
20287
	Fix FreeBSD compilation problem.
20288
20289
	* grub-core/kern/emu/hostdisk.c (MAJOR) [FreeBSD]: New definition.
20290
	(FLOPPY_MAJOR) [FreeBSD]: Likewise.
20291
20292
2011-03-24  Colin Watson  <cjwatson@ubuntu.com>
20293
20294
	* grub-core/video/fb/video_fb.c (grub_video_fb_get_info_and_fini):
20295
	Switch back to page zero before loading a kernel, since some kernel
20296
	drivers expect that.
20297
	Thanks to: Felix Kuehling.
20298
20299
2011-03-24  Vladimir Serbinenko  <phcoder@gmail.com>
20300
20301
	* grub-core/lib/relocator.c (grub_relocator_alloc_chunk_addr)
20302
	[DEBUG_RELOCATOR]: Reuse grub_mm_check.
20303
	(grub_relocator_alloc_chunk_align) [DEBUG_RELOCATOR]: Likewise.
20304
20305
2011-03-24  Vladimir Serbinenko  <phcoder@gmail.com>
20306
20307
	* include/grub/mm.h (GRUB_MM_CHECK): Rename to ...
20308
	(grub_mm_check): ... this. MAke a function-like macro and use GRUB_FILE.
20309
20310
2011-03-24  Vladimir Serbinenko  <phcoder@gmail.com>
20311
20312
	* grub-core/lib/relocator.c (allocate_inreg): Avoid dprintf unless
20313
	DEBUG_RELOCATOR is defined since gfxterm can't cope with output when
20314
	malloc is disabled.
20315
20316
2011-03-24  Vladimir Serbinenko  <phcoder@gmail.com>
20317
20318
	* grub-core/loader/i386/bsdXX.c (grub_freebsd_load_elfmodule): Account
20319
	for modules headers when counting the needed allocation size.
20320
20321
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20322
20323
	* grub-core/term/gfxterm.c (calculate_normal_character_width): Return 8
20324
	if no ASCII character is found to prevent crash.
20325
20326
2011-03-23  Alexander Kurtz  <kurtz.alex@googlemail.com>
20327
20328
	* grub-core/video/bitmap.c (match_extension): Ignore case.
20329
20330
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20331
20332
	* grub-core/normal/menu_entry.c (init_line): Fix off-by-one error.
20333
20334
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20335
20336
	* grub-core/script/parser.y: Declare "time" as valid argument.
20337
20338
2011-03-23  Peter Jones  <pjones@redhat.com>
20339
20340
	Fix incorrect assert failure reporting.
20341
20342
	* grub-core/tests/example_functional_test.c (example_test): Add
20343
	a failure comment.
20344
	* grub-core/tests/lib/test.c (add_failure): Renamed to ...
20345
	(failure_start): ...this. Check that malloc succeeded.
20346
	Don't call xvasprintf. Return failure struct.
20347
	(failure_append_vtext): New function.
20348
	(failure_append_text): Likewise.
20349
	(add_failure): Likewise.
20350
	(grub_test_assert_helper): Likewise.
20351
	* include/grub/test.h (grub_test_assert_helper): New declaration.
20352
	(grub_test_assert): Macro rewritten.
20353
20354
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20355
20356
	* grub-core/normal/main.c (GRUB_MOD_INIT): Export pager variable.
20357
20358
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20359
20360
	* grub-core/lib/i386/pc/biosnum.c: Add missing include.
20361
20362
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20363
20364
	* grub-core/disk/usbms.c (grub_usbms_reset): Transform USB-style error
20365
	into GRUB-style one.
20366
20367
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20368
20369
	* grub-core/bus/usb/usbtrans.c (grub_usb_control_msg): Return usb-style
20370
	error and not grub_errno.
20371
	* grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Likewise.
20372
20373
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20374
20375
	* grub-core/bus/usb/uhci.c (grub_uhci_detect_dev): Return
20376
	GRUB_USB_SPEED_NONE in case of failure and not the error code.
20377
20378
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20379
20380
	* grub-core/efiemu/i386/pc/cfgtables.c
20381
	(grub_machine_efiemu_init_tables): Make declaration a prototype.
20382
	* grub-core/loader/xnu.c (grub_xnu_lock): Likewise.
20383
	(grub_xnu_unlock): Likewise.
20384
	* grub-core/normal/cmdline.c (grub_cmdline_get/cl_set_pos_all): Likewise.
20385
20386
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20387
20388
	* grub-core/bus/usb/usb.c (attach_hooks): Make static.
20389
	* grub-core/bus/usb/usbhub.c (hubs): Likewise.
20390
	* grub-core/commands/hashsum.c (aliases): Likewise.
20391
	* grub-core/commands/setpci.c (pci_registers): Likewise.
20392
	* grub-core/disk/usbms.c (attach_hook): Likewise.
20393
	* grub-core/fs/zfs/zfs.c (decomp_table): Likewise.
20394
	(zio_checksum_table): Likewise.
20395
	* grub-core/gettext/gettext.c (grub_gettext_msg_list): Likewise.
20396
	* grub-core/gfxmenu/gfxmenu.c (cached_view): Likewise.
20397
	* grub-core/lib/legacy_parse.c (legacy_commands): Likewise.
20398
	* grub-core/lib/relocator.c (leftovers): Likewise.
20399
	(extra_blocks): Likewise.
20400
	* grub-core/loader/i386/bsd.c (relocator): Likewise.
20401
	* grub-core/loader/i386/multiboot_mbi.c (modules): Likewise.
20402
	(modules_last): Likewise.
20403
	* grub-core/loader/i386/xnu.c (table_aliases): Likewise.
20404
	(devices): Likewise.
20405
	* grub-core/loader/multiboot_mbi2.c (modules): Likewise.
20406
	(modules_last): Likewise.
20407
	* grub-core/normal/auth.c (users): Likewise.
20408
	* grub-core/normal/context.c (initial_menu): Likewise.
20409
	(current_menu): Likewise.
20410
	* grub-core/normal/crypto.c (crypto_specs): Likewise.
20411
	* grub-core/term/serial.c (grub_serial_ports): Likewise.
20412
	(grub_serial_terminfo_input_template): Likewise.
20413
	(grub_serial_terminfo_output_template): Likewise.
20414
	(grub_serial_terminfo_input): Likewise.
20415
	(grub_serial_terminfo_output): Likewise.
20416
	(registered): Likewise.
20417
	* grub-core/term/usb_keyboard.c (attach_hook): Likewise.
20418
20419
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20420
20421
	* grub-core/video/bochs.c (grub_video_bochs_setup): Use
20422
	grub_video_mode_type_t.
20423
	* grub-core/video/cirrus.c (grub_video_cirrus_setup): Likewise.
20424
	* grub-core/video/i386/pc/vbe.c (grub_video_vbe_setup): Likewise.
20425
	* grub-core/video/i386/pc/vga.c (grub_video_vga_setup): Likewise.
20426
20427
2011-03-23  Vladimir Serbinenko  <phcoder@gmail.com>
20428
20429
	* util/grub-install.in: Correct the x86-64 name as x86_64.
20430
20431
2011-03-11  Colin Watson  <cjwatson@ubuntu.com>
20432
20433
	* grub-core/boot/i386/pc/lnxboot.S (real_code_2): Ensure that the
20434
	initial chunk read from the kernel always includes GRUB's multiboot
20435
	header, which is now outside the first sector.
20436
20437
2011-03-09  Colin Watson  <cjwatson@ubuntu.com>
20438
20439
	* grub-core/loader/i386/linux.c (find_efi_mmap_size): Page-align
20440
	cached mmap_size, so that this works correctly when called multiple
20441
	times.
20442
	Reported by: Daniel Kahn Gillmor.  Should fix Debian bug #616638.
20443
20444
2011-03-09  Colin Watson  <cjwatson@ubuntu.com>
20445
20446
	* docs/grub.texi (Simple configuration): Tidy up formatting.
20447
20448
2011-03-07  Szymon Janc <szymon@janc.net.pl>
20449
20450
	* grub-core/fs/zfs/zfs.c (zap_leaf_lookup):
20451
	Set-but-not-used variable removed.
20452
20453
2011-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
20454
20455
	Workaround yet another IEEE1275 bug.
20456
20457
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
20458
	GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS.
20459
	* grub-core/kern/ieee1275/mmap.c (grub_machine_mmap_iterate): Ignore
20460
	adress_cells and size:cells if GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS
20461
	is set.
20462
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
20463
	GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS on powermacs.
20464
20465
2011-02-12  Vladimir Serbinenko  <phcoder@gmail.com>
20466
20467
	* grub-core/partmap/msdos.c (pc_partition_map_embed): Fix off by one
20468
	error.
20469
20470
2011-02-11  Colin Watson  <cjwatson@ubuntu.com>
20471
20472
	* util/grub.d/20_linux_xen.in: Bail out early if linux_list is
20473
	empty, since in that case we can only generate either nothing or a
20474
	syntactically invalid configuration file.
20475
	Reported by: Michal Suchanek.  Fixes Debian bug #612898.
20476
20477
2011-02-09  Colin Watson  <cjwatson@ubuntu.com>
20478
20479
	* docs/grub.texi (Kernel): Add reference to grub-mkrescue.
20480
	(Making a GRUB bootable CD-ROM): Likewise.
20481
	(Invoking grub-mkrescue): New section.
20482
	Reported by: Yann Dirson.  Fixes Debian bug #612585.
20483
20484
2011-02-09  Colin Watson  <cjwatson@ubuntu.com>
20485
20486
	* util/grub-install.in: Remove unnecessary brackets from tr
20487
	arguments.
20488
	* util/grub.d/10_hurd.in: Likewise.
20489
	* util/grub.d/10_kfreebsd.in: Likewise.
20490
	* util/grub.d/10_linux.in: Likewise.
20491
	* util/grub.d/20_linux_xen.in: Likewise.
20492
	Reported by: Jamie Heilman.  Fixes Debian bug #612564.
20493
20494
2011-02-08  Colin Watson  <cjwatson@ubuntu.com>
20495
20496
	* include/grub/file.h (not_easly_seekable): Rename to ...
20497
	(not_easily_seekable): ... this.  Update all users.
20498
20499
2011-01-28  Colin Watson  <cjwatson@ubuntu.com>
20500
20501
	* docs/grub.texi (Making a GRUB bootable CD-ROM): Update to describe
20502
	grub-mkrescue.
20503
20504
2011-01-24  Vladimir Serbinenko  <phcoder@gmail.com>
20505
20506
	* util/grub-mkimage.c (generate_image): Refuse to create the images
20507
	bigger than the actual flash (512K) in Loongson machines. 512K is also
20508
	the biggest chip supported by them.
20509
20510
2011-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
20511
20512
	* grub-core/kern/emu/getroot.c: Include config-util.h explicitly.
20513
20514
2011-01-22  Anthony DeRobertis <anthony@derobert.net>
20515
20516
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Check
20517
	super_offset field.
20518
20519
2011-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
20520
20521
	* util/grub-install.in: Ignore install device on platforms
20522
	where it doesn't make sense. Always use UUIDs except on pc, efi and
20523
	sparc64.
20524
	Reported by: Daniel Kahn Gillmor.
20525
20526
2011-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
20527
20528
	* grub-core/bus/bonito.c (write_bases): Fix direction of the shift.
20529
20530
2011-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
20531
20532
	* grub-core/partmap/bsdlabel.c: Include grub/emu/misc.h and not grub/util/misc.h.
20533
	(iterate_real): Don't rely on partition being non-NULL.
20534
20535
2011-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
20536
20537
	* grub-core/script/argv.c (round_up_exp): unsigned is 32-bit on all
20538
	supported platforms. Put a compile time assert for this rather than
20539
	generate a warning with 32-bit shift.
20540
20541
2011-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
20542
20543
	* grub-core/disk/scsi.c (grub_scsi_read): Fix binary and check and make
20544
	logical expression more readable.
20545
20546
2011-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
20547
20548
	* grub-core/disk/raid.c (insert_array): Ensure uniqueness of p->number
20549
	even if some elements have a name.
20550
	Reported by: Alexander GQ Gerasiov.
20551
20552
2011-01-22  Colin Watson  <cjwatson@ubuntu.com>
20553
20554
	* util/grub-mkconfig_lib.in (is_path_readable_by_grub): Consider a
20555
	path unreadable if `grub-probe -t abstraction' fails, for example if
20556
	memberlist fails on an LVM volume group.
20557
	Reported by: Darius Jahandarie.
20558
20559
2011-01-22  Colin Watson  <cjwatson@ubuntu.com>
20560
20561
	* docs/grub.texi (Simple configuration): Document
20562
	GRUB_PRELOAD_MODULES.
20563
20564
2011-01-17  Colin Watson  <cjwatson@ubuntu.com>
20565
20566
	* .bzrignore: Remove nonexistent grub-pbkdf2.
20567
17.3.28 by Colin Watson, Colin Watson, Alexander Kurtz
[ Colin Watson ]
20568
2011-01-16  Vladimir Serbinenko  <phcoder@gmail.com>
20569
20570
	* configure.ac: Bump version to 1.99~rc1.
20571
1.15.14 by Colin Watson
Import upstream version 1.99~rc1
20572
2011-01-15  Vladimir Serbinenko  <phcoder@gmail.com>
20573
20574
	* util/grub-mkimage.c (generate_image): Check fwstart.img checksum
20575
	for safety.
20576
20577
2011-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
20578
20579
	* grub-core/kern/mips/yeeloong/init.c (grub_machine_init): Init boot
20580
	module.
20581
20582
2011-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
20583
20584
	* grub-core/Makefile.core.def (fwstart): Add lost LDFLAGS.
20585
20586
2011-01-13  Vladimir Serbinenko  <phcoder@gmail.com>
20587
20588
	* grub-core/fs/zfs/zfsinfo.c (grub_cmd_zfs_bootfs): Quote bootpath and
20589
	diskdevid.
20590
20591
2011-01-13  Vladimir Serbinenko  <phcoder@gmail.com>
20592
20593
	Fix compilation on cygwin.
20594
20595
	* conf/Makefile.common (STRIPFLAGS_KERNEL): Add -F elf32-i386 and
20596
	-R .drectve on cygwin.
20597
	* conf/i386-pc-cygwin-img-ld.sc: Merge rdata and pdata into data.
20598
	* configure.ac: Use $(top_builddir) in TARGET_OBJ2ELF.
20599
	(COND_CYGWIN): New condition.
20600
	* grub-core/Makefile.am (%.mod): Set TARGET_OBJ2ELF.
20601
	* grub-core/genmod.sh.in: Use ${TARGET_OBJ2ELF} and
20602
	not @TARGET_OBJ2ELF@.
20603
	* util/grub-pe2elf.c (write_symbol_table): Use pe_symtab->type and not
20604
	type to determine whether aux is to be used.
20605
1.15.13 by Colin Watson
Import upstream version 1.99~20110112
20606
2011-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
20607
20608
	* util/ieee1275/ofpath.c (grub_util_devname_to_ofpath): Use the
20609
	realpath'ed device string.
20610
	Handle floppy (somewhat).
20611
	Issue error in unknown case rather than garbage.
20612
	Reported by: Axel Beckert.
20613
20614
2011-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
20615
20616
	* util/grub.d/00_header.in (load_video): Handle the case when no video
20617
	drivers available.
20618
	Thanks to: Axel Beckert.
20619
20620
2011-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
20621
20622
	* util/grub-mkfont.c (write_font_pf2): Use appropriate type for data
20623
	variable. Fixes problem on big endian platforms.
20624
20625
2011-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
20626
20627
	* grub-core/Makefile.core.def (ieee1275_fb): Disable on sparc.
20628
	It doesn't work well there.
20629
20630
2011-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
20631
20632
	* grub-core/normal/context.c (grub_env_context_close): Silence spurious
20633
	warning.
20634
	* grub-core/normal/menu.c (grub_menu_execute_entry): Likewise.
20635
	* grub-core/partmap/msdos.c (pc_partition_map_embed): Use unsigned
20636
	counter.
20637
20638
2011-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
20639
20640
	Use alias->path rather than buggy "canon".
20641
20642
	* grub-core/disk/ieee1275/ofdisk.c (ofdisk_hash_add_real): New function.
20643
	(ofdisk_hash_add): New argument curcan. All users updated.
20644
20645
2011-01-11  Colin Watson  <cjwatson@ubuntu.com>
20646
20647
	* configure.ac: Fall back to `true' if `makeinfo' does not exist.
20648
20649
2011-01-11  Vladimir Serbinenko  <phcoder@gmail.com>
20650
20651
	* grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_load32): Apply
20652
	loadmask before doing any calculations. Use correct type for offset.
20653
	(grub_linux_load64): Likewise.
20654
1.15.12 by Colin Watson
Import upstream version 1.99~20110111
20655
2011-01-11  Colin Watson  <cjwatson@ubuntu.com>
20656
20657
	* util/grub-mklayout.c (console_grub_equivalences_shift): Terminate
20658
	with NULL.
20659
	(console_grub_equivalences_unshift): Likewise.
20660
	Reported by: Daniel Dehennin.
20661
20662
2011-01-11  Vladimir Serbinenko  <phcoder@gmail.com>
20663
20664
	* grub-core/fs/i386/pc/pxe.c (set_mac_env): Export variable.
20665
	(set_env_limn_ro): Likewise.
20666
	(GRUB_MOD_INIT): Likewise.
20667
	* grub-core/hook/datehook.c (GRUB_MOD_INIT): Likewise. Change to
20668
	ARRAY_SIZE while on it.
20669
	(GRUB_MOD_FINI): Change to ARRAY_SIZE.
20670
	* grub-core/normal/context.c (grub_env_export): Move from here ...
20671
	* grub-core/kern/env.c (grub_env_export): ... here.
20672
	* grub-core/normal/context.c (grub_cmd_export): Skip exporting root and
20673
	prefix.
20674
	* grub-core/kern/main.c (grub_main): Export root and prefix.
20675
	* include/grub/env.h (grub_env_export): Export.
20676
	Reported by: Seth Goldberg.
20677
20678
2011-01-11  Vladimir Serbinenko  <phcoder@gmail.com>
20679
20680
	* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi):
20681
	Take into account space used by ELF sections and multiboot palette.
20682
	Reported by: Grégoire Sutre.
20683
20684
2011-01-11  Vladimir Serbinenko  <phcoder@gmail.com>
20685
20686
	* BUGS: New file.
20687
20688
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20689
20690
	Pass more appropriate video id to Linux.
20691
20692
	* grub-core/loader/i386/linux.c (grub_linux_setup_video): Use
20693
	grub_video_get_driver_id and variable gfxpayloadforcelfb to
20694
	fill have_vga.
20695
	(grub_linux_boot): Rely on grub_linux_setup_video to fill have_vga and
20696
	shift params->lfb_size.
20697
	* include/grub/i386/linux.h: Make an enume out of have_vga values.
20698
20699
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20700
20701
	* util/grub-menulst2cfg.c: Add missing include of misc.h.
20702
20703
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20704
20705
	* grub-core/fs/zfs/zfsinfo.c (grub_cmd_zfs_bootfs): Use comma as
20706
	separator and pass bootpath/devid even if only one of them is available.
20707
	Reported by: Seth Goldberg.
20708
20709
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20710
20711
	Don't use post-4G memory on EFI even if 64-bit since some non-compliant
20712
	implementations bug on them.
20713
20714
	* grub-core/kern/efi/mm.c (grub_efi_allocate_pages): Skip post-4G
20715
	memory.
20716
	(filter_memory_map): Likewise.
20717
20718
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20719
20720
	* util/grub-kbdcomp.in: Add missing prefix and exec_prefix variables.
20721
	Reported by: nebuchadnezzar.
20722
20723
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20724
20725
	* util/grub-kbdcomp.in: Add missing transform and bindir variables.
20726
	Reported by: nebuchadnezzar.
20727
20728
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20729
20730
	Submenu default support.
20731
20732
	* grub-core/normal/menu.c (grub_menu_execute_entry): New parameter
20733
	auto_boot. All users updated.
20734
	Declared static.
20735
	Handle chosen and default with submenus.
20736
	(grub_menu_execute_with_fallback): Declared static.
20737
	Don't notify failure if autobooted. Upper level does it.
20738
	(menuentry_eq): New function.
20739
	(get_entry_number): Use menuentry_eq.
20740
	(show_menu): New parameter "autobooted". All users updated.
20741
	(grub_show_menu): Likewise.
20742
	* include/grub/normal.h (grub_show_menu): Likewise.
20743
	* include/grub/menu.h (grub_menu_execute_entry): Removed.
20744
	(grub_menu_execute_with_fallback): Likewise.
20745
20746
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20747
20748
	* util/grub-mklayout.c (usage): Update help text.
20749
20750
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20751
20752
	* grub-core/commands/legacycfg.c (legacy_file): Trim the line.
20753
20754
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20755
20756
	* util/grub-menulst2cfg.c (main): Trim the line.
20757
20758
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20759
20760
	* grub-core/kern/i386/pc/init.c (grub_get_conv_memsize): Removed.
20761
	(grub_machine_init): Don't check amount of low memory as reportedly
20762
	INT 12h can be broken and if low memory is too low we wouldn't have
20763
	gotten into grub_machine_init anyway.
20764
20765
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20766
20767
	* grub-core/kern/i386/pc/mmap.c (grub_get_conv_memsize): New function.
20768
	(grub_machine_mmap_iterate): Take low memory into account
20769
20770
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20771
20772
	* grub-core/fs/btrfs.c (grub_btrfs_mount): Transform out of range into
20773
	badfs.
20774
	Reported by: TiCPU.
20775
20776
2011-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
20777
20778
	* grub-core/disk/raid.c (insert_array): Display RAID name in duplicate
20779
	members errors.
20780
20781
2011-01-09  Grégoire Sutre  <gregoire.sutre@gmail.com>
20782
20783
	* util/grub.d/10_netbsd.in (netbsd_load_fs_module): New function.
20784
	(netbsd_entry): Use netbsd_load_fs_module() to load filesystem module.
20785
20786
2011-01-09  Grégoire Sutre  <gregoire.sutre@gmail.com>
20787
20788
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Handle
20789
	openbsd and netbsd types being in part_bsd module.
20790
20791
2011-01-08  Vladimir Serbinenko  <phcoder@gmail.com>
20792
20793
	* config.h.in (_LARGEFILE_SOURCE): Add missing define.
20794
	(_FILE_OFFSET_BITS): Likewise.
20795
	Reported by: Seth Goldberg.
20796
20797
2011-01-08  Grégoire Sutre  <gregoire.sutre@gmail.com>
20798
20799
	* configure.ac: Check for libdevmapper header.
20800
20801
2011-01-08  Vladimir Serbinenko  <phcoder@gmail.com>
20802
20803
	* grub-core/fs/zfs/zfs.c (dmu_read): Use void * for some pointers to
20804
	avoid aliasing.
20805
	(fzap_lookup): Likewise.
20806
	(dnode_get): Likewise.
20807
	(make_mdn): Likewise.
20808
	(zfs_mount): Likewise.
20809
	(fzap_iterate): Use temporary pointer to avoid aliasing.
20810
	(grub_zfs_read): Likewise.
20811
	* grub-core/loader/i386/xnu.c (grub_xnu_boot): Likewise.
20812
	* grub-core/loader/xnu.c (grub_cmd_xnu_kernel): Use void * for some
20813
	pointers to avoid aliasing.
20814
	(grub_cmd_xnu_kernel64): Likewise.
20815
	(grub_xnu_load_driver): Likewise.
20816
20817
2011-01-08  Vladimir Serbinenko  <phcoder@gmail.com>
20818
20819
	* grub-core/commands/terminal.c (grub_cmd_terminal_input): Silence
20820
	aliasing warning.
20821
	(grub_cmd_terminal_output): Likewise.
20822
	Reported and tested by: Grégoire Sutre.
20823
20824
2011-01-08  Vladimir Serbinenko  <phcoder@gmail.com>
20825
20826
	* grub-core/term/at_keyboard.c (grub_keyboard_getkey): Silence spurious
20827
	warning.
20828
	Reported and tested by: Grégoire Sutre.
20829
20830
2011-01-08  Vladimir Serbinenko  <phcoder@gmail.com>
20831
20832
	* configure.ac: Do CPU substitution even if it's specified explicitly.
20833
	Reported and tested by: Alain Greppin.
20834
20835
2011-01-08  Vladimir Serbinenko  <phcoder@gmail.com>
20836
20837
	* grub-core/Makefile.am (rs_decoder.S): Force compilation with -Os.
20838
	Reported and tested by: Alain Greppin.
20839
20840
2011-01-08  Vladimir Serbinenko  <phcoder@gmail.com>
20841
20842
	Satisfy some bison versions need for inttypes.h.
20843
20844
	* grub-core/lib/posix_wrap/inttypes.h: New file.
20845
	* grub-core/lib/posix_wrap/sys/types.h (int8_t): New type.
20846
	(int16_t): Likewise.
20847
	(int32_t): Likewise.
20848
	(int64_t): Likewise.
20849
	Reported and tested by: Alain Greppin.
20850
20851
2011-01-08  Vladimir Serbinenko  <phcoder@gmail.com>
20852
20853
	* grub-core/loader/i386/bsdXX.c (grub_netbsd_load_elf_meta):
20854
	Silence spurious warning.
20855
	Reported and tested by: Alain Greppin.
20856
20857
2011-01-07  Szymon Janc <szymon@janc.net.pl>
20858
20859
	* docs/grub.texi (Support automatic decompression): Update with xz
20860
	decompression support.
20861
20862
2011-01-07  Szymon Janc <szymon@janc.net.pl>
20863
20864
	Improve loaders' kernel command line handling.
20865
20866
	* grub-core/lib/cmdline.c: New file.
20867
	* include/grub/lib/cmdline.h: Likewise.
20868
	* grub-core/loader/i386/linux.c (grub_cmd_linux): Use
20869
	grub_create_loader_cmdline to create kernel command line.
20870
	* grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
20871
	* grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Likewise.
20872
	* grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_linux): Likewise.
20873
	* grub-core/Makefile.core.def (linux16): Add lib/cmdline.c on i386_pc.
20874
	(linux): Add lib/cmdline.c on common.
20875
20876
2011-01-07  Vladimir Serbinenko  <phcoder@gmail.com>
20877
20878
	* grub-core/fs/xfs.c (grub_xfs_iterate_dir): Take into account that
20879
	inopos might be unaligned.
20880
20881
2011-01-07  Vladimir Serbinenko  <phcoder@gmail.com>
20882
20883
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Add missing
20884
	endian transformations.
20885
	* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
20886
	Based on report by: Doug Nazar.
20887
20888
2011-01-07  Doug Nazar  <nazard.michi@gmail.com>
20889
20890
	* grub-core/disk/raid5_recover.c (grub_raid5_recover): Add missing
20891
	array->members[i].start_sector.
20892
	* grub-core/disk/raid6_recover.c (grub_raid6_recover): Likewise.
20893
20894
2011-01-07  Vladimir Serbinenko  <phcoder@gmail.com>
20895
20896
	* util/grub-setup.c (setup): Handle NetBSD and OpenBSD disklabels.
20897
	Reported and tested by: Grégoire Sutre.
20898
1.15.11 by Colin Watson
Import upstream version 1.99~20110106
20899
2011-01-06  Colin Watson  <cjwatson@ubuntu.com>
20900
20901
	* tests/util/grub-shell.in: Set serial terminfo type to `dumb', to
20902
	avoid causing test failures by clearing the screen.
20903
20904
2011-01-06  Colin Watson  <cjwatson@ubuntu.com>
20905
20906
	* grub-core/kern/emu/getroot.c (find_root_device_from_mountinfo):
20907
	Fix prefix check to handle the case where dir ends with a slash
20908
	(most significantly, "/" itself).
20909
	Reported by: Michael Vogt.
20910
20911
2011-01-05  Vladimir Serbinenko  <phcoder@gmail.com>
20912
20913
	Run terminfo_cls on initing terminfo output to clear the screen and
20914
	move the cursor to (0,0).
20915
20916
	* grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_init_output):
20917
	Call grub_terminfo_output_init.
20918
	* grub-core/term/serial.c (grub_serial_term_output): Set .init.
20919
	* grub-core/term/terminfo.c (grub_terminfo_output_init): New function.
20920
	* include/grub/terminfo.h (grub_terminfo_output_init): New declaration.
20921
20922
2011-01-05  Vladimir Serbinenko  <phcoder@gmail.com>
20923
20924
	* util/grub-install.in: Determine ofpathname, nvsetenv and efibootmgr
20925
	only when needed.
20926
20927
2011-01-05  Vladimir Serbinenko  <phcoder@gmail.com>
20928
20929
	* grub-core/term/terminfo.c (grub_terminfo_readkey): Handle keys with
20930
	CTRL.
20931
20932
2011-01-05  Vladimir Serbinenko  <phcoder@gmail.com>
20933
20934
	The E820 type 5 is BADRAM, not EXEC_CODE.
20935
20936
	* grub-core/loader/i386/bsd.c (GRUB_E820_EXEC_CODE): Removed.
20937
	(GRUB_E820_BADRAM): New define.
20938
	* grub-core/loader/i386/linux.c (grub_linux_boot): Translate code
20939
	into reserved. Propagate BADRAM.
20940
	* grub-core/loader/i386/bsd.c (GRUB_E820_EXEC_CODE): Removed.
20941
	(GRUB_E820_BADRAM): New define.
20942
20943
2011-01-04  Vladimir Serbinenko  <phcoder@gmail.com>
20944
20945
	* grub-core/lib/efi/relocator.c (grub_relocator_firmware_fill_events):
20946
	Ignore the memory post-4G.
20947
	(grub_relocator_firmware_alloc_region): Additional debug statement.
20948
20949
2011-01-04  Vladimir Serbinenko  <phcoder@gmail.com>
20950
20951
	* grub-core/kern/emu/getroot.c (grub_util_get_grub_dev): Check md/%s
20952
	names.
20953
	Reported by: David Pravec.
20954
1.15.10 by Colin Watson
Import upstream version 1.99~20110104
20955
2011-01-04  Vladimir Serbinenko  <phcoder@gmail.com>
20956
20957
	* grub-core/disk/i386/pc/biosdisk.c (GRUB_MOD_INIT): Workaround buggy
20958
	BIOSes.
20959
20960
2011-01-04  Vladimir Serbinenko  <phcoder@gmail.com>
20961
20962
	* grub-core/lib/reed_solomon.c (grub_reed_solomon_add_redundancy):
20963
	Prevent overflow.
20964
	(grub_reed_solomon_recover): Likewise.
20965
20966
2011-01-04  Vladimir Serbinenko  <phcoder@gmail.com>
20967
20968
	* grub-core/lib/reed_solomon.c (main) [TEST]: Reactivate normal test.
20969
20970
2011-01-04  Vladimir Serbinenko  <phcoder@gmail.com>
20971
20972
	* grub-core/lib/reed_solomon.c (scratch) [! STANDALONE]: Remove leftover
20973
	variable.
20974
20975
2011-01-04  Colin Watson  <cjwatson@ubuntu.com>
20976
20977
	* grub-core/commands/legacycfg.c (GRUB_MOD_INIT): Fix typo in
20978
	descriptions of extract_legacy_entries_source and
20979
	extract_legacy_entries_configfile.
20980
	Reported by: Seung Soo, Ha.
20981
20982
2011-01-03  Colin Watson  <cjwatson@ubuntu.com>
20983
20984
	* grub-core/bus/pci.c (grub_pci_iterate): Skip remaining functions
20985
	on devices that do not implement function 0.
20986
20987
2011-01-03  Dave Vasilevsky <dave@vasilevsky.ca>
20988
20989
	* grub-core/fs/hfsplus.c: Make parent unsigned.
20990
	(grub_hfsplus_cmp_catkey): Don't compare using subtraction, it
20991
	overflows.
20992
	(grub_hfsplus_cmp_extkey): Likewise
20993
20994
2011-01-03  Vladimir Serbinenko  <phcoder@gmail.com>
20995
20996
	* util/grub-install.in: Correctly use bootloader_id and not
20997
	GRUB_DISTRIBUTOR on efibootmgr line.
20998
20999
2011-01-03  Vladimir Serbinenko  <phcoder@gmail.com>
21000
21001
	* util/grub-mkfont.c (main): Report errors in FT_New_Face.
21002
21003
2010-12-31  Ian Campbell <ijc@hellion.org.uk>
21004
21005
	* util/grub.d/20_linux_xen.in (linux_entry): Correctly capitalize
21006
	Xen and reorder menu item wording to make it clearer that this entry
21007
	will launch Xen.  Print separate messages when loading Xen and
21008
	Linux.
21009
21010
2010-12-31  Vladimir Serbinenko  <phcoder@gmail.com>
21011
21012
	* grub-core/partmap/amiga.c (GRUB_AMIGA_PART_MAGIC): New define.
21013
	(amiga_partition_map_iterate): Check "PART" magic to avoid a very long
21014
	loop in case of incorrect amiga partmap.
21015
21016
2010-12-31  Vladimir Serbinenko  <phcoder@gmail.com>
21017
21018
	* grub-core/partmap/amiga.c (GRUB_AMIGA_RDSK_MAGIC): New define.
21019
	(amiga_partition_map_iterate): Use grub_memcmp instead of grub_strcmp.
21020
	Reported by:EHeM.
21021
21022
2010-12-31  Vladimir Serbinenko  <phcoder@gmail.com>
21023
21024
	* grub-core/loader/i386/bsdXX.c (grub_openbsd_find_ramdisk): Silence
21025
	spurious warning.
21026
	Reported by: crocket
21027
21028
2010-12-27  Vladimir Serbinenko  <phcoder@gmail.com>
21029
21030
	* grub-core/loader/xnu.c (grub_cmd_xnu_kernel) [! GRUB_MACHINE_EFI]:
21031
	Preload EFIemu.
21032
	(grub_cmd_xnu_kernel64) [! GRUB_MACHINE_EFI]: Likewise.
21033
21034
2010-12-27  Vladimir Serbinenko  <phcoder@gmail.com>
21035
21036
	* grub-core/loader/xnu.c (grub_cmd_xnu_kext): Abort if no kernel
21037
	is loaded
21038
	(grub_cmd_xnu_kextdir): Likewise.
21039
	(grub_cmd_xnu_splash): Likewise.
21040
21041
2010-12-27  Vladimir Serbinenko  <phcoder@gmail.com>
21042
21043
	Avoid using Reed-Solomon with 0 redundancy.
21044
21045
	* grub-core/kern/i386/pc/startup.S: Remove 0-data check.
21046
	* grub-core/lib/reed_solomon.c (decode_block): Do not proceed on 0 data
21047
	or 0 redundancy.
21048
	(grub_reed_solomon_add_redundancy): Do not proceed with 0 redundancy.
21049
	(grub_reed_solomon_recover): Likewise.
21050
21051
2010-12-27  Vladimir Serbinenko  <phcoder@gmail.com>
21052
21053
	Don't use disk subsystem in freebsd_boot.
21054
21055
	* grub-core/loader/i386/bsd.c (freebsd_bootdev): New variable.
21056
	(freebsd_biosdev): Likewise.
21057
	(grub_freebsd_boot): Use freebsd_bootdev and freebsd_biosdev.
21058
	(grub_cmd_freebsd): Set freebsd_bootdev and freebsd_biosdev.
21059
21060
2010-12-26  Vladimir Serbinenko  <phcoder@gmail.com>
21061
21062
	Handling of files of unknown size is currently limited. They can't be
21063
	used e.g. for initrd or modules. Moreover gzip handling of not
21064
	easily seekable files is buggy. Disable unknown file size for now. May
21065
	be inefficient but works.
21066
21067
	* grub-core/io/gzio.c (test_header): Always retrieve the file size.
21068
	* grub-core/io/xzio.c (grub_xzio_open): Likewise.
21069
21070
2010-12-25  Mirko Parthey <mirko.parthey@informatik.tu-chemnitz.de>
21071
21072
	* grub-core/boot/i386/pc/boot.S: Fix %es:%bx pointing to nowhere on
21073
	floppy probe.
21074
21075
2010-12-25  Jeroen Dekkers <jeroen@dekkers.ch>
21076
21077
	* grub-core/disk/raid.c (insert_array): Don't add spurious members.
21078
21079
2010-12-25  Shea Levy <shlevy>
21080
21081
	* grub-core/genmod.sh.in: Use @OBJCOPY@ rather than objcopy.
21082
21083
2010-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
21084
21085
	* util/grub.d/30_os-prober.in: Don't emit drivemap directive for
21086
	Windows Server 2008.
21087
	Reported by: Devin Giddings.
21088
21089
2010-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
21090
21091
	* grub-core/commands/acpihalt.c (grub_acpi_halt): Sleep for 1.5 before
21092
	writing an error message because of async power management.
21093
	* grub-core/kern/mips/yeeloong/init.c (grub_halt): Likewise.
21094
	(grub_reboot): Likewise.
21095
21096
2010-12-23  Jordan Uggla  <jordan.uggla@gmail.com>
21097
21098
	* tests/util/grub-shell.in: Suppress "ACPI shutdown failed" error to
21099
	keep unit tests from failing when they shouldn't.
21100
21101
2010-12-21  Colin Watson  <cjwatson@ubuntu.com>
21102
17.3.22 by Colin Watson
* New Bazaar snapshot.
21103
	* include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): The
21104
	previous patch increased the size of the RS code by 20 bytes (at
21105
	least with gcc-4.4), so increase this by 20 bytes to match.
21106
	(GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise.
21107
21108
2010-12-21  Colin Watson  <cjwatson@ubuntu.com>
21109
1.15.9 by Colin Watson
Import upstream version 1.99~20101221
21110
	* grub-core/lib/reed_solomon.c (gauss_solve): Fix size of standalone
21111
	scratch area.  Make sure to initialise chosen in standalone mode as
21112
	well as non-standalone.
21113
	Reported by: Robert Hooker and Andy Whitcroft.
21114
	Tested by: Andy Whitcroft.
21115
21116
2010-12-21  Colin Watson  <cjwatson@ubuntu.com>
21117
21118
	* grub-core/commands/echo.c (grub_cmd_echo): Make UTF-8-clean by
21119
	constructing a new unescaped string and passing it to grub_xputs in
21120
	one go, rather than passing characters to grub_printf one at a time.
21121
21122
2010-12-21  Colin Watson  <cjwatson@ubuntu.com>
21123
21124
	* grub-core/fs/udf.c (read_string): Pacify GCC warning by
21125
	initialising utf16.
21126
21127
2010-12-21  Colin Watson  <cjwatson@ubuntu.com>
21128
21129
	* util/grub-mkconfig_lib.in (gettext_quoted): Add clarifying
21130
	comment.  Add an extra layer of quotation, requiring the output of
21131
	this function to be used in a printf format string.
21132
	(gettext_printf): New function.
21133
	* util/grub.d/10_hurd.in: Use gettext_printf where appropriate.
21134
	Extract translatable strings from here-documents and use a temporary
21135
	variable instead, so that xgettext can find them.
21136
	* util/grub.d/10_kfreebsd.in: Likewise.
21137
	* util/grub.d/10_linux.in: Likewise.
21138
	* util/grub.d/20_linux_xen.in: Likewise.
21139
21140
	* po/grub.d.sed: New file.
21141
	* po/Makefile.in.in ($(DOMAIN).pot-update): Extract gettext_printf
21142
	arguments.  Set c-format flags on all strings extracted from
21143
	util/grub.d/ (xgettext refuses to include these itself for strings
21144
	it extracted from a shell file, but these really are c-format).
21145
21146
2010-12-20  Vladimir Serbinenko  <phcoder@gmail.com>
21147
21148
	* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_add_module):
21149
	Avoid next pointing to nowhere.
21150
21151
2010-12-19  Vladimir Serbinenko  <phcoder@gmail.com>
21152
21153
	* grub-core/fs/affs.c (grub_affs_mount): Read data->bblock.rootblock
21154
	rather than assuming than rootblock is exactly in the middle.
21155
	(grub_affs_label): Likewise.
21156
21157
2010-12-19  Vladimir Serbinenko  <phcoder@gmail.com>
21158
21159
	* grub-core/fs/affs.c (grub_affs_fs) [GRUB_UTIL]: Explicitly set
21160
	reserved_first_sector to 0.
21161
	* grub-core/fs/cpio.c (grub_cpio_fs) [GRUB_UTIL]: Likewise.
21162
	* grub-core/fs/sfs.c (grub_sfs_fs) [GRUB_UTIL]: Likewise.
21163
	* grub-core/fs/xfs.c (grub_xfs_fs) [GRUB_UTIL]: Likewise.
21164
21165
2010-12-19  Vladimir Serbinenko  <phcoder@gmail.com>
21166
21167
	Fix handling of UTF-16 UDF labels.
21168
21169
	* grub-core/fs/udf.c (grub_udf_iterate_dir): Move string-parsing part
21170
	(read_string): .. here.
21171
	(grub_udf_label): Use read_string.
21172
21173
2010-12-19  BVK Chaitanya  <bvk.groups@gmail.com>
21174
21175
	* grub-core/normal/menu_entry.c (run): Execute commands from menu
21176
	editor under argument scope.
21177
	Reported by: Jordan Uggla
21178
21179
2010-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
21180
21181
	* util/grub-mkfont.c (main): Handle errors from FT_Set_Pixel_Sizes.
21182
21183
2010-12-18  Colin Watson  <cjwatson@ubuntu.com>
21184
21185
	* grub-core/normal/term.c (print_more): Make \r or \n scroll one
21186
	line, and other keys scroll an entire page (previous handling was
21187
	for \r and \n to scroll a page and other keys to scroll two lines).
21188
21189
2010-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
21190
21191
	* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi):
21192
	Set ptrdest to correct get_physical_target_address rather than
21193
	incorrect get_virtual_current_address.
21194
21195
2010-12-18  kashyap garimella <garimella.kashyap@gmail.com>
21196
21197
	* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_load): Use
21198
	correct cat to grub_uint8_t * rather than grub_uint32_t *.
21199
1.15.8 by Colin Watson
Import upstream version 1.99~20101210
21200
2010-12-10  Colin Watson  <cjwatson@ubuntu.com>
21201
21202
	* .bzrignore: Ignore grub-core/rs_decoder.S.
21203
21204
2010-12-10  Colin Watson  <cjwatson@ubuntu.com>
21205
21206
	* grub-core/gettext/gettext.c (grub_gettext_init_ext): Factor out
21207
	.mo/.mo.gz opening sequence to ...
21208
	(grub_mofile_open_lang): ... here.
21209
	(grub_gettext_init_ext): If opening ll_CC fails, try ll.
21210
	* util/grub.d/00_header.in (grub_lang): Include country part of
21211
	locale.
21212
	Reported by: Mario Limonciello.
21213
21214
2010-12-09  Robert Millan  <rmh@gnu.org>
21215
21216
	* NEWS: Document addition of ZFS support.
21217
21218
2010-12-04  Colin Watson  <cjwatson@ubuntu.com>
21219
21220
	* grub-core/kern/i386/pc/startup.S (grub_console_getkey): Use `>> 1'
21221
	rather than `/ 2', as the latter requires -Wa,--divide which would
21222
	require bumping our minimum binutils version.
21223
21224
2010-12-03  BVK Chaitanya  <bvk.groups@gmail.com>
21225
21226
	* util/grub-script-check.c (main): Print script line number on
21227
	error.
21228
21229
2010-12-01  Robert Millan  <rmh@gnu.org>
21230
21231
	* grub-core/fs/zfs/zfs.c: New file.
21232
	* grub-core/fs/zfs/zfs_fletcher.c: Likewise.
21233
	* grub-core/fs/zfs/zfs_lzjb.c: Likewise.
21234
	* grub-core/fs/zfs/zfs_sha256.c: Likewise.
21235
	* grub-core/fs/zfs/zfsinfo.c: Likewise.
21236
21237
	* include/grub/zfs/dmu.h: Likewise.
21238
	* include/grub/zfs/dmu_objset.h: Likewise.
21239
	* include/grub/zfs/dnode.h: Likewise.
21240
	* include/grub/zfs/dsl_dataset.h: Likewise.
21241
	* include/grub/zfs/dsl_dir.h: Likewise.
21242
	* include/grub/zfs/sa_impl.h: Likewise.
21243
	* include/grub/zfs/spa.h: Likewise.
21244
	* include/grub/zfs/uberblock_impl.h: Likewise.
21245
	* include/grub/zfs/vdev_impl.h: Likewise.
21246
	* include/grub/zfs/zap_impl.h: Likewise.
21247
	* include/grub/zfs/zap_leaf.h: Likewise.
21248
	* include/grub/zfs/zfs.h: Likewise.
21249
	* include/grub/zfs/zfs_acl.h: Likewise.
21250
	* include/grub/zfs/zfs_znode.h: Likewise.
21251
	* include/grub/zfs/zil.h: Likewise.
21252
	* include/grub/zfs/zio.h: Likewise.
21253
	* include/grub/zfs/zio_checksum.h: Likewise.
21254
21255
	* Makefile.util.def: Build ZFS into libgrubmods.
21256
	* grub-core/Makefile.core.def: Build zfs.mod.
21257
21258
2010-11-30  Szymon Janc <szymon@janc.net.pl>
21259
21260
	* grub-core/commands/regexp.c (grub_cmd_regexp): Remove unused
21261
	variable.
21262
	* grub-core/commands/wildcard.c (match_files): Likewise.
21263
21264
2010-11-30  Robert Millan  <rmh@gnu.org>
21265
21266
	* grub-core/loader/i386/bsd.c
21267
	(grub_cmd_freebsd_loadenv, grub_cmd_freebsd_module_elf): Check
21268
	whether kernel is loaded using grub_loader_is_loaded(), rather
21269
	than `kernel_type', which may still be `KERNEL_TYPE_NONE' under
21270
	certain error conditions.
21271
21272
2010-11-30  Robert Millan  <rmh@gnu.org>
21273
21274
	* grub-core/commands/echo.c: Include `<grub/term.h>'.
21275
	(grub_cmd_echo): Call grub_refresh() after printing a message.
21276
21277
2010-11-26  Vladimir Serbinenko  <phcoder@gmail.com>
21278
21279
	Avoid using tricks for initialising endian variables.
21280
21281
	* grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot):
21282
	Make const.
21283
	(GRUB_MOD_INIT): Don't byte-swap.
21284
	* include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_BIOS_BOOT):
21285
	Use grub_cpu_to_le16_compile_time and grub_cpu_to_le32_compile_time.
21286
	* include/grub/types.h (grub_swap_bytes16_compile_time): New macro.
21287
	(grub_swap_bytes32_compile_time): Likewise.
21288
	(grub_cpu_to_le32_compile_time): Likewise.
21289
	(grub_cpu_to_le16_compile_time): Likewise.
21290
21291
2010-11-26  Vladimir Serbinenko  <phcoder@gmail.com>
21292
21293
	* util/grub-setup.c (setup): Stop recommending --force. People who
21294
	understand the dangers of blocklists are able to find this option
21295
	anyway and the ones who don't shouldn't use it anyway.
21296
21297
2010-11-26  Robert Millan  <rmh@gnu.org>
21298
21299
	* grub-core/term/i386/pc/vga_text.c (VGA_TEXT_SCREEN): Beautify.
21300
	Update all users.
21301
1.15.7 by Colin Watson
Import upstream version 1.99~20101126
21302
2010-11-26  Colin Watson  <cjwatson@ubuntu.com>
21303
21304
	Fix LVM-on-RAID probing.
21305
21306
	* util/grub-probe.c (probe): Remember which disk was detected as
21307
	RAID (perhaps an LVM physical volume).  Use that disk's raidname
21308
	rather than that of the top-level disk.
21309
21310
2010-11-25  BVK Chaitanya  <bvk.groups@gmail.com>
21311
21312
	Fix cmdline argument quotes for setparams command of menuentry
21313
	definitions.
21314
21315
	* grub-core/commands/menuentry.c (setparams_prefix): Use single
21316
	quotes for arguments.
21317
	* grub-core/lib/legacy_parse.c (grub_legacy_escape): Use
21318
	grub_strchrsub function instead.
21319
21320
	* include/grub/misc.h (grub_strchrsub): New function.
21321
21322
2010-11-24  Colin Watson  <cjwatson@ubuntu.com>
21323
21324
	* util/deviceiter.c (grub_util_iterate_devices): Save a bit of
21325
	effort by skipping "." and ".." entries up-front.
21326
	Suggested by: Michael Lazarev.
21327
21328
2010-11-24  Colin Watson  <cjwatson@ubuntu.com>
21329
21330
	* grub-core/Makefile.core.def (xz_decompress): Move -lgcc from
21331
	ldflags to ldadd, to fix link line ordering.
21332
	(none_decompress): Likewise.
21333
1.15.6 by Colin Watson
Import upstream version 1.99~20101124
21334
2010-11-24  Colin Watson  <cjwatson@ubuntu.com>
21335
21336
	* grub-core/Makefile.core.def (kernel): Add kern/emu/cache.S for emu
21337
	platforms.
21338
	(grub-emu-lite): Remove kern/emu/cache.S.
21339
21340
2010-11-23  Colin Watson  <cjwatson@ubuntu.com>
21341
21342
	* util/deviceiter.c (compare_devices): If the by-id link for a
21343
	device couldn't be resolved, fall back to sorting by the by-id link
21344
	rather than segfaulting.
21345
	Reported and tested by: Daniel Mierswa.
21346
21347
2010-11-23  Colin Watson  <cjwatson@ubuntu.com>
21348
21349
	* Makefile.util.def (grub-menulst2cfg): List libraries in ldadd, not
21350
	ldflags, to fix link line ordering.
21351
21352
2010-11-23  Colin Watson  <cjwatson@ubuntu.com>
21353
21354
	* grub-core/Makefile.am (gentrigtables): Put -lm after $<; some
21355
	linkers are picky about this.
21356
21357
2010-11-23  Colin Watson  <cjwatson@ubuntu.com>
21358
21359
	* grub-core/Makefile.am (command.lst): Adjust sed expression
21360
	ordering so that extended and priority commands aren't treated as
21361
	ordinary commands.
21362
1.26.5 by Colin Watson
Import upstream version 1.99~20101123
21363
2010-11-23  Colin Watson  <cjwatson@ubuntu.com>
21364
21365
	* include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_BIOS_BOOT):
21366
	Remove byte-swapping function calls, which are not valid in
21367
	structure initialisers.
21368
	* grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot): Make
21369
	non-const.
21370
	(GRUB_MOD_INIT): Byte-swap data1, data2, and data3 fields of
21371
	grub_gpt_partition_type_bios_boot.
21372
21373
2010-11-22  Colin Watson  <cjwatson@ubuntu.com>
21374
21375
	Fix test program build on GNU/kFreeBSD.
21376
21377
	* Makefile.util.def (example_unit_test): Add `$(LIBZFS)
21378
	$(LIBNVPAIR)' library dependencies.
21379
21380
2010-11-22  Colin Watson  <cjwatson@ubuntu.com>
21381
21382
	* util/grub-install.in: Fix parsing of --grub-mkrelpath= option.
21383
1.26.4 by Colin Watson
Import upstream version 1.99~20101122
21384
2010-11-22  Colin Watson  <cjwatson@ubuntu.com>
21385
21386
	* util/grub-install.in: Remove excessive quoting that broke
21387
	installations to RAID devices.
21388
21389
2010-11-19  Vladimir Serbinenko  <phcoder@gmail.com>
21390
21391
	* grub-core/loader/i386/linux.c (grub_cmd_linux): Pass correctly the
21392
	bootloader version instead of 0.
21393
21394
2010-11-19  Vladimir Serbinenko  <phcoder@gmail.com>
21395
21396
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Fix spurious
21397
	warning.
21398
21399
2010-11-19  Vladimir Serbinenko  <phcoder@gmail.com>
21400
21401
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Don't try to
21402
	retrieve the metadat sector if size isn't known.
21403
	* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
21404
21405
2010-11-18  Robert Millan  <rmh@gnu.org>
21406
21407
	* grub-core/fs/btrfs.c (grub_btrfs_mount): Replace grub_strncmp()
21408
	with grub_memcmp().
21409
21410
2010-11-18  Vladimir Serbinenko  <phcoder@gmail.com>
21411
21412
	* grub-core/normal/menu_entry.c (print_up): Fix displacement of up
21413
	arrow.
21414
	Reported by: Jordan Uggla.
21415
21416
2010-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
21417
21418
	Make better UTF compliant.
21419
21420
	* grub-core/normal/charset.c (grub_utf8_to_utf16): Handle 6- and 7-byte
21421
	sequences as incorrect.
21422
	(grub_is_valid_utf8): Likewise.
21423
	(grub_utf8_to_ucs4): Likewise.
21424
	(grub_ucs4_to_utf8): Handle codepoints outside of BMP.
21425
	(grub_ucs4_to_utf8_alloc): Likewise.
21426
	* include/grub/charset.h (grub_utf16_to_utf8): Likewise.
21427
21428
2010-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
21429
21430
	Make legacy_source behave like source.
21431
21432
	* grub-core/commands/legacycfg.c (legacy_file): Don't call
21433
	grub_show_menu.
21434
	(grub_cmd_legacy_source): Call grub_show_menu if needed.
21435
21436
2010-11-16  Colin Watson  <cjwatson@debian.org>
21437
21438
	* conf/Makefile.common (CFLAGS_GNULIB): Add -Wno-unused-parameter.
21439
	(-Wunused implies -Wunused-parameter, but not vice versa).
21440
21441
2010-11-16  Colin Watson  <cjwatson@ubuntu.com>
21442
21443
	* configure.ac: Make error messages less confusing by testing for
21444
	-Wtrampolines rather than -Wno-trampolines (since -Wno-* is always
21445
	accepted, but produces a diagnostic if something else is wrong).
21446
21447
2010-11-15  Vladimir Serbinenko  <phcoder@gmail.com>
21448
21449
	* grub-core/term/at_keyboard.c (grub_keyboard_controller_read)
21450
	[GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_QEMU]: ifdef-ed out
21451
	(now unused).
21452
	(grub_keyboard_controller_init)
21453
	[GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_QEMU]: Don't attempt to
21454
	read the initial state since controller isn't inited yet.
21455
21456
2010-11-15  Vladimir Serbinenko  <phcoder@gmail.com>
21457
21458
	* grub-core/lib/relocator.c (malloc_in_range): Take into account that
21459
	allocate_regbeg may need to create new chunk header.
21460
21461
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
21462
21463
	Fix quoting in legacy parser.
21464
21465
	* grub-core/lib/legacy_parse.c (grub_legacy_escape): Correctly handle
21466
	single quotes.
21467
	(grub_legacy_parse): Likewise.
21468
	Reported by: Jordan Uggla.
21469
	Tested by: Jordan Uggla.
21470
21471
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
21472
21473
	Don't add -lgcc on i386 and x86_64.
21474
21475
	* configure.ac (LIBS): Don't add -lgcc on i386 and x86_64.
21476
	* conf/Makefile.common (LDADD_KERNEL): Likewise.
21477
	* grub-core/Makefile.core.def (kernel): Use LDADD_KERNEL.
21478
21479
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
21480
21481
	* configure.ac: Add -Wno-trampolines when supported.
21482
21483
2010-11-14  Modestas Vainius <modax@debian.org>
21484
21485
	* grub-core/kern/emu/getroot.c (grub_util_is_dmraid): Recognise ddf1_
21486
	fakeraid.
21487
21488
2010-11-14  Giuseppe Caizzone <acaizzo@gmail.com>
21489
21490
	Add generic logical block size support for UDF.
21491
21492
	* grub-core/fs/udf.c (GRUB_UDF_LOG2_BLKSIZE): Removed.
21493
	(GRUB_UDF_BLKSZ): Removed.
21494
	(struct grub_udf_data): New field "lbshift" to hold the logical	block
21495
	size of the file system in log2 format. All users updated.
21496
	(sblocklist): Change type to unsigned.
21497
	(grub_udf_mount): Change type of "sblklist" to unsigned.
21498
	Move AVDP search before VRS recognition, because the latter requires
21499
	knowledge of the logical block size, which is detected during the
21500
	former.
21501
	Detect and validate logical block size during AVDP search, adding
21502
	support for block sizes 512, 1024 and 4096.
21503
	Make VRS recognition independent of block size.
21504
21505
2010-11-14  Giuseppe Caizzone <acaizzo@gmail.com>
21506
21507
	Properly handle deleted files on UDF.
21508
21509
	* grub-core/fs/udf.c (grub_udf_iterate_dir): Skip directory entries
21510
	whose "characteristics" field has the bit GRUB_UDF_FID_CHAR_DELETED
21511
	set.
21512
21513
2010-11-14  Giuseppe Caizzone <acaizzo@gmail.com>
21514
21515
	Support reading files larger than 2 GiB.
21516
21517
	* grub-core/fs/udf.c (grub_udf_iterate_dir): Change type of variable
21518
	"offset" to grub_off_t.
21519
	(grub_udf_read_file): Likewise for parameter "pos".
21520
21521
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
21522
21523
	* docs/grub.texi (Changes from GRUB Legacy): Note when save_env is
21524
	unavailable.
21525
	(Simple configuration): Refer to Changes from GRUB Legacy about
21526
	save_env availability.
21527
21528
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
21529
21530
	* util/grub-install.in: Ignore empty partition table detection
21531
	instead of trying to include part_ module.
21532
21533
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
21534
21535
	* grub-core/disk/lvm.c (GRUB_MOD_FINI): Reset the vg_list. Fixes
21536
	LVM on RAID support.
21537
21538
2010-11-14  Vladimir Serbinenko  <phcoder@gmail.com>
21539
21540
	Properly define WORDS_BIGENDIAN in wrapped environments.
21541
21542
	* grub-core/lib/libgcrypt_wrap/cipher_wrap.h (WORDS_BIGENDIAN): New
21543
	definition.
21544
	* grub-core/lib/posix_wrap/sys/types.h (WORDS_BIGENDIAN): Likewise.
21545
21546
	Reported by: Manoel Rebelo Abranches.
21547
	Tested by: Manoel Rebelo Abranches.
21548
21549
2010-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
21550
21551
	* util/grub-mkconfig.in: Fix quoting.
21552
21553
2010-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
21554
21555
	Support big ext2 files.
21556
21557
	* grub-core/fs/ext2.c (grub_ext2_inode): Rename dir_acl to size_high.
21558
	(grub_ext2_read_block): Support triple indirect blocks.
21559
	(grub_ext2_read_file): Use 64-bit types and read size_high.
21560
	(grub_ext2_open): Read size_high.
21561
	Reported by: Ximin Luo.
21562
	Tested by: Manoel Rebelo Abranches.
21563
21564
2010-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
21565
21566
	* util/grub-install.in: Handle filenames containing spaces.
21567
	Reported by: Jordan Uggla.
21568
	Tested by: Jordan Uggla.
21569
21570
2010-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
21571
21572
	* util/grub-mkconfig.in (grub_script_check): New variable.
21573
	Use grub_script_check instead of grub-script-check.
21574
	Reported by: Barry Jackson.
21575
21576
2010-11-13  Vladimir Serbinenko  <phcoder@gmail.com>
21577
21578
	* docs/grub.texi (menu): Correct the order.
21579
	Reported by: D. Hugh Redelmeier.
21580
21581
2010-11-12  Vladimir Serbinenko  <phcoder@gmail.com>
21582
21583
	* grub-core/kern/i386/pc/startup.S (multiboot_trampoline): Add missing
21584
	jump.
21585
21586
2010-11-08  Manoel Rebelo Abranches <mrabran@br.ibm.com>
21587
21588
	* include/grub/elfload.h (grub_elf32_size): New parameter.
21589
	All users updated.
21590
	Return maximum segments alignment.
21591
	(grub_elf64_size): Likewise.
21592
	* kern/elf.c (grub_elf32_size): New parameter. All users updated.
21593
	Return maximum segments alignment.
21594
	(grub_elf64_size): Likewise.
21595
	* grub-core/loader/powerpc/ieee1275/linux.c:
21596
	(grub_linux_claimmap_iterate): New function. Uses the
21597
	"available" property in the "memory" node for memory allocation
21598
	for kernel in the PowerPC loader.
21599
	(grub_linux_load32): Correctly find linux entry point offset.
21600
	(grub_linux_load64): Likewise.
21601
21602
2010-11-07  Robert Millan  <rmh@gnu.org>
21603
21604
	On mips-yeeloong, build with -march=loongson2f when this flag is
21605
	available (GCC >= 4.4).
21606
	* conf/Makefile.common [COND_mips_yeeloong] (CFLAGS_PLATFORM): Remove
21607
	`-march=mips3'.
21608
	* configure.ac: For mips-yeeloong, add -march=loongson2f if available,
21609
	or otherwise add -march=mips3.
21610
21611
2010-11-07  BVK Chaitanya  <bvk.groups@gmail.com>
21612
21613
	Suppress shell expansion on echo '*' and echo "*" like cases.
21614
	Reported by: Jordan Uggla.
21615
21616
	* grub-core/script/execute.c (grub_script_arglist_to_argv): Escape
21617
	string arguments before shell expansion.
21618
	* tests/grub_cmd_echo.in: New testcases.
21619
21620
2010-11-07  Robert Millan  <rmh@gnu.org>
21621
21622
	* conf/mips-qemu-mips.rmk: Remove stale file from previous
21623
	transition.
21624
21625
2010-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
21626
21627
	* grub-core/kern/emu/hostdisk.c
21628
	(convert_system_partition_to_system_disk): Handle devices like "sdaa1".
21629
21630
2010-11-06  Vladimir Serbinenko  <phcoder@gmail.com>
21631
21632
	* include/grub/emu/misc.h: Don't include grub/util/libzfs.h.
21633
	* include/grub/emu/misc.h (grub_get_libzfs_handle): Move from here ...
21634
	* include/grub/util/libzfs.h (grub_get_libzfs_handle): ... here.
21635
21636
2010-11-06  Vladimir Serbinenko  <phcoder@gmail.com>
21637
21638
	* grub-core/fs/ntfs.c (grub_ntfs_uuid): Make uppercase.
21639
21640
2010-11-06  Vladimir Serbinenko  <phcoder@gmail.com>
21641
21642
	* util/grub-install.in: Replace useless recomendation to pass
21643
	--modules with a recomendation to report a bug.
21644
21645
2010-11-06  Vladimir Serbinenko  <phcoder@gmail.com>
21646
21647
	Properly register serial terminfo.
21648
	Reported by: Jordan Uggla
21649
21650
	* grub-core/term/serial.c (grub_serial_terminfo_input_template): New
21651
	const.
21652
	(grub_serial_terminfo_output_template): Likewise.
21653
	(grub_cmd_serial): Register "serial" with terminfo.
21654
	(GRUB_MOD_INIT(serial)): Fill grub_serial_terminfo_input and
21655
	grub_serial_terminfo_output.
21656
21657
2010-11-05  Robert Millan  <rmh@gnu.org>
21658
21659
	* util/grub-mkconfig.in: Remove gfxterm.mod probe (no longer
21660
	needed).
21661
21662
2010-11-05  Robert Millan  <rmh@gnu.org>
21663
21664
	On Yeeloong, pass machine type information to Linux.
21665
21666
	* grub-core/loader/mips/linux.c [GRUB_MACHINE_MIPS_YEELOONG]
21667
	(LOONGSON_MACHTYPE): New macro, set to
21668
	"machtype=lemote-yeeloong-2f-8.9inches".
21669
	[LOONGSON_MACHTYPE] (grub_cmd_linux): Pass LOONGSON_MACHTYPE as
21670
	additional argument to Linux.
21671
21672
2010-11-04  Robert Millan  <rmh@gnu.org>
21673
21674
	* util/deviceiter.c (grub_util_iterate_devices): Increase SCSI
21675
	limit to 48 (to cope with Sun Fire X4500), and IDE limit to 96
21676
	(its SATA disks are detected as slaveless IDE master drives on
21677
	kFreeBSD).
21678
	Reported by Carsten Aulbert.
21679
21680
2010-11-02  Colin Watson  <cjwatson@ubuntu.com>
21681
21682
	* util/bin2h.c (main): Fix spelling error in generated output.
21683
21684
2010-11-01  Grégoire Sutre  <gregoire.sutre@gmail.com>
21685
21686
	* grub-core/partmap/bsdlabel.c (iterate_real): Fix an integer overflow.
21687
21688
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
21689
21690
	* grub-core/loader/i386/linux.c (grub_cmd_linux): Autoload vbe.mod if
21691
	vga= option is supplied.
21692
21693
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
21694
21695
	* util/grub.d/10_hurd.in: Don't call savedefault on recovery entries.
21696
	* util/grub.d/10_kfreebsd.in: Likewise.
21697
	* util/grub.d/10_linux.in: Likewise.
21698
	* util/grub.d/20_linux_xen.in: Likewise.
21699
21700
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
21701
21702
	* grub-core/lib/arg.c (grub_arg_parse): Avoid interpreting direct
21703
	argument as an argument to no-argument option.
21704
21705
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
21706
21707
	* util/grub.d/10_linux.in: Add missing load_video with explicit
21708
	GRUB_GFXPAYLOAD_LINUX.
21709
21710
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
21711
21712
	* Makefile.am (libgrub.pp): Propagate the libgrub.a split.
21713
21714
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
21715
21716
	* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Do not put
21717
	elements with invlid index.
21718
	* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
21719
	* grub-core/disk/raid.c (insert_array): Automatically reallocate
21720
	members.
21721
	* include/grub/raid.h (grub_raid_member): New struct.
21722
	(grub_raid_array): Transform devices and start_sector into usage of
21723
	grub_raid_member. All users updated
21724
	(allocated_devs): New member.
21725
21726
2010-11-01  Vladimir Serbinenko  <phcoder@gmail.com>
21727
21728
	* docs/man/grub-set-default.h2m: Clarify that only saved default entry
21729
	is modified
21730
21731
2010-10-29  BVK Chaitanya  <bvk.groups@gmail.com>
21732
21733
	NetBSD build fix for getline function conflict from gnulib.
21734
21735
	* Makefile.util.def (libgrubkern.a): New library for grub kernel
21736
	components that depend on gnulib headers.
21737
	(libgrubmods.a): Renamed from earlier libgrub.a.
21738
	* conf/Makefile.common: Remove gnulib from *_LIBRARY flags.
21739
21740
2010-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
21741
21742
	* util/grub-setup.c (setup): Refuse to do a cross-disk embeddingless
21743
	install rather than creating a broken install.
21744
21745
2010-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
21746
21747
	* util/grub-setup.c (argp): Remove misleading example of installing to
21748
	a partition.
21749
21750
2010-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
21751
21752
	* util/grub-setup.c (setup): Clarify the error message.
21753
21754
2010-10-26  Vladimir Serbinenko  <phcoder@gmail.com>
21755
21756
	* include/grub/types.h (grub_target_off_t): Removed no longer used type.
21757
21758
2010-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
21759
21760
	* grub-core/kern/emu/misc.c
21761
	(grub_make_system_path_relative_to_its_root)
21762
	[HAVE_LIBZFS && HAVE_LIBNVPAIR]: Fix mountpoint return on ZFS.
21763
21764
2010-10-23  Vladimir Serbinenko  <phcoder@gmail.com>
21765
21766
	* grub-core/kern/emu/misc.c
21767
	(grub_make_system_path_relative_to_its_root): Revert r2882.
21768
21769
2010-10-22  Vladimir Serbinenko  <phcoder@gmail.com>
21770
21771
	* grub-core/lib/relocator.c (grub_relocator_subchunk): Remove now
21772
	useless field head. All users updated.
21773
	(free_subchunk): Correct handling of IN_REGION subchunk.
21774
21775
2010-10-22  Colin Watson  <cjwatson@ubuntu.com>
21776
21777
	* docs/grub.texi (Installing GRUB using grub-install): Proofread.
21778
	(Supported kernels): Likewise.
21779
21780
2010-10-18  Grégoire Sutre  <gregoire.sutre@gmail.com>
21781
21782
	Make mktemp invocations portable.
21783
21784
	* grub-core/genmod.sh.in: Use mktemp with an explicit template, and
21785
	exit if mktemp fails.
21786
	* tests/grub_script_blockarg.in: Likewise.
21787
	* tests/partmap_test.in: Likewise.
21788
	* tests/util/grub-shell-tester.in: Likewise.
21789
	* tests/util/grub-shell.in: Likewise.
21790
	* util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
21791
	* Makefile.am: Likewise, and chain shell commands with `&&'
21792
	instead of ';'.
21793
	* util/grub-mkrescue.in: Use the same explicit template as above, and
21794
	exit if mktemp fails.
21795
21796
2010-10-18  BVK Chaitanya  <bvk.groups@gmail.com>
21797
21798
	* util/grub.d/10_linux.in: Fix built-in initramfs image mode for
21799
	Linux kernel, reported by Dennis Schridde.
21800
21801
2010-10-17  Szymon Janc <szymon@janc.net.pl>
21802
21803
       * grub-core/normal/auth.c (grub_auth_check_authentication):
21804
       Set-but-not-used variable removed.
21805
21806
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
21807
21808
	* docs/grub.texi (GNU/Linux): Document APM unavailability with
21809
	32-bit linux protocol.
21810
21811
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
21812
21813
	* grub-core/kern/i386/pc/startup.S (grub_console_setcursor): Check
21814
	cursor shape for sanity.
21815
21816
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
21817
21818
	* docs/grub.texi (Installation): Document buggy BIOS install.
21819
21820
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
21821
21822
	* docs/grub.texi (Installation): Indent.
21823
21824
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
21825
21826
	* util/grub-setup.c (setup): New parameter allow_floppy.
21827
	(arguments): New member allow_floppy.
21828
	(argp_parser): Handle --allow-floppy.
21829
	(main): Pass allow_floppy.
21830
	* util/grub-install.in: New option --allow-floppy passed though to
21831
	grub-setup.
21832
21833
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
21834
21835
	* util/grub-install.in: Handle partitionless disks.
21836
21837
2010-10-17  Vladimir Serbinenko  <phcoder@gmail.com>
21838
21839
	* util/grub-setup.c (setup): Don't clean blocklists before readability
21840
	verfification.
21841
21842
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
21843
21844
	* docs/grub.texi (Installation): Document embedding zone. Remove
21845
	obsolete grub-install example.
21846
21847
2010-10-16  Szymon Janc <szymon@janc.net.pl>
21848
21849
	* grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel):
21850
	Set-but-not-used variable ifdef'ed.
21851
	* grub-core/lib/legacy_parse.c (grub_legacy_parse): Likewise.
21852
	* grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Set-but-not-used
21853
	variable removed.
21854
	* grub-core/disk/lvm.c (grub_lvm_scan_device): Likewise.
21855
	* grub-core/fs/jfs.c (grub_jfs_find_file): Likewise.
21856
	* grub-core/fs/minix.c (grub_minix_dir): Likewise.
21857
	* grub-core/fs/sfs.c (grub_sfs_read_extent): Likewise.
21858
	* grub-core/fs/ufs.c (grub_ufs_dir): Likewise.
21859
	* grub-core/gfxmenu/gui_list.c (grub_gui_list_new): Likewise.
21860
	* grub-core/gfxmenu/view.c (redraw_menu_visit): Likewise.
21861
	* grub-core/gfxmenu/widget-box.c (draw): Likewise.
21862
	* grub-core/lib/relocator.c (malloc_in_range): Likewise.
21863
	* grub-core/loader/i386/bsdXX.c (grub_netbsd_load_elf_meta): Likewise.
21864
	* grub-core/loader/i386/bsd_pagetable.c (fill_bsd64_pagetable):
21865
	Likewise.
21866
21867
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
21868
21869
	* grub-core/commands/acpihalt.c (skip_ext_op): Skip index field op.
21870
	* include/grub/acpi.h (GRUB_ACPI_EXTOPCODE_INDEX_FIELD_OP): New
21871
	enum value.
21872
21873
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
21874
21875
	* grub-core/commands/acpihalt.c (get_sleep_type): Accept \_S5_ as
21876
	synonym to _S5_. Needed for some DSDTs.
21877
21878
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
21879
21880
	Userspace ACPI parser debugging.
21881
21882
	* grub-core/commands/acpihalt.c [GRUB_DSDT_TEST]: Include userspace
21883
	headers and add relevant defines. Don't include standard headers.
21884
	(main) [GRUB_DSDT_TEST]: New function.
21885
	* include/grub/acpi.h [GRUB_DSDT_TEST]: Don't include standard headers.
21886
	Don't declare functions.
21887
21888
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
21889
21890
	Remove dead grub_efi_mm_fini.
21891
21892
	* grub-core/kern/efi/mm.c (allocated_page): Removed.
21893
	(ALLOCATED_PAGES_SIZE): Likewise.
21894
	(MAX_ALLOCATED_PAGES): Likewise.
21895
	(allocated_pages): Likewise.
21896
	(grub_efi_allocate_pages): Don't record allocated pages.
21897
	(grub_efi_free_pages): Likewise.
21898
	(grub_efi_mm_init): Likewise.
21899
	(grub_efi_mm_fini): Removed.
21900
21901
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
21902
21903
	* grub-core/kern/efi/mm.c (BYTES_TO_PAGES): Round up instead of down.
21904
	(grub_efi_mm_init): Take into account the memory map size increase.
21905
21906
2010-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
21907
21908
	* grub-core/term/ns8250.c (do_real_config): Set port->broken to 0.
21909
	(serial_hw_put): Wait based on real time rather than port reads. Don't
21910
	roken ports.
21911
	* include/grub/serial.h (grub_serial_port): New field broken.
21912
21913
2010-10-16  Robert Millan  <rmh@gnu.org>
21914
21915
	* grub-core/kern/emu/misc.c
21916
	(grub_make_system_path_relative_to_its_root): Fix premature return
21917
	when processing non-root ZFS filesystems.
21918
	Reported by Sergio Talens-Oliag.
21919
21920
2010-10-15  Robert Millan  <rmh@gnu.org>
21921
21922
	* util/grub.d/10_linux.in (list): Expand "vmlinu[zx]" instances to
21923
	guarantee compressed ones are processed first.
21924
21925
2010-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
21926
21927
	* grub-core/efiemu/main.c (grub_efiemu_prepare): Handle errors from
21928
	grub_efiemu_autocore.
21929
21930
2010-10-14  Vladimir Serbinenko  <phcoder@gmail.com>
21931
21932
	* grub-core/kern/i386/pc/startup.S (bypass_table): Use 0x1b explicitly
21933
	rather than 0x1b.
21934
	(grub_console_getkey): Use correct jae opcode rather than ja.
21935
21936
2010-10-12  Robert Millan  <rmh@gnu.org>
21937
21938
	* util/grub-mkconfig.in: Merge `GRUB_DISABLE_LINUX_RECOVERY' and
21939
	`GRUB_DISABLE_NETBSD_RECOVERY' into a single `GRUB_DISABLE_RECOVERY'
21940
	variable.  All references updated.
21941
21942
	* util/grub.d/10_kfreebsd.in: Support recovery boot entries.
21943
21944
2010-10-08  Vladimir Serbinenko  <phcoder@gmail.com>
21945
21946
	Correctly distinguish mdraid flavours.
21947
21948
	* grub-core/disk/raid.c (grub_raid_getname) [GRUB_UTIL]: New function.
21949
	(insert_array): New argument raid.
21950
	* include/grub/disk.h (grub_disk_dev) [GRUB_UTIL]: New member raidname.
21951
	* include/grub/raid.h (grub_raid_array) [GRUB_UTIL]: New member driver.
21952
	* util/grub-probe.c (probe): PRint raidname instead of plainly "mdraid".
21953
21954
2010-10-09  Vladimir Serbinenko  <phcoder@gmail.com>
21955
21956
	* grub-core/kern/i386/pc/startup.S (grub_console_getkey): Fix incorrect
21957
	handling of special keys.
21958
21959
2010-10-02  Aleš Nesrsta <starous@volny.cz>
21960
21961
	* include/grub/scsi.h (grub_make_scsi_id): Fix incorrect usgae of
21962
	GRUB_SCSI_ID_BUS_SHIFT instead of GRUB_SCSI_ID_LUN_SHIFT.
21963
21964
2010-10-02  Aleš Nesrsta <starous@volny.cz>
21965
21966
	* grub-core/bus/usb/ohci.c (GRUB_OHCI_TDS): Increase.
21967
	* grub-core/bus/usb/uhci.c (N_TD): New definition. All previous implicit
21968
	users updated.
21969
	* grub-core/bus/usb/usbtrans.c (grub_usb_bulk_setup_readwrite):
21970
	Use right endpoint when querying descriptor.
21971
21972
2010-10-01  Vladimir Serbinenko  <phcoder@gmail.com>
21973
21974
	Clear out 0x80 color bit on EFI.
21975
	Tested by: decoder
21976
	Reported by: decoder and meta tech.
21977
21978
	* grub-core/term/efi/console.c (grub_console_standard_color): Removed.
21979
	(grub_console_setcolorstate): Clear out 0x80 bit.
21980
	Use GRUB_TERM_DEFAULT_STANDARD_COLOR.
21981
	(grub_console_output): Use GRUB_TERM_DEFAULT_NORMAL_COLOR.
21982
	Use GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR.
21983
21984
2010-10-01  Vladimir Serbinenko  <phcoder@gmail.com>
21985
21986
	* grub-core/loader/i386/linux.c (DEFAULT_VIDEO_MODE) [GRUB_MACHINE_EFI]:
21987
	Set to "auto".
21988
21989
2010-09-30  Vladimir Serbinenko  <phcoder@gmail.com>
21990
21991
	* grub-core/gettext/gettext.c (grub_gettext_init_ext): Avoid using
21992
	mo_file after freeing.
21993
21994
2010-09-30  Vladimir Serbinenko  <phcoder@gmail.com>
21995
21996
	* grub-core/normal/term.c (read_terminal_list): Free in a right order.
21997
21998
2010-09-30  Vladimir Serbinenko  <phcoder@gmail.com>
21999
22000
	* grub-core/script/execute.c (grub_script_execute_sourcecode): Set
22001
	flags.
22002
22003
2010-09-30  Vladimir Serbinenko  <phcoder@gmail.com>
22004
22005
	* util/grub-setup.c (main) [GRUB_MACHINE_IEEE1275]: Propagate argp
22006
	usage.
22007
22008
2010-09-30  Vladimir Serbinenko  <phcoder@gmail.com>
22009
22010
	Put terminfo into core on ieee1275 and yeeloong (needed for console).
22011
22012
	* gentpl.py: New groups terminfoinkernel and terminfomodule.
22013
	* grub-core/Makefile.am (KERNEL_HEADER_FILES): Include extcmd.h, arg.h
22014
	and terminfo.h when needed.
22015
	* grub-core/Makefile.core.def (kernel): Include term/terminfo.c,
22016
	term/tparm.c, commands/extcmd.c, lib/arg.c on terminfokernel.
22017
	(terminfo): Enable only on terminfokernel.
22018
	(extcmd): Likewise.
22019
	* include/grub/extcmd.h: Add missing EXPORT_FUNC.
22020
	* include/grub/lib/arg.h: Likewise.
22021
	* grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_dimensions): Fix
22022
	incorrect usage of ->.
22023
22024
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
22025
22026
	* grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi]
22027
	[GRUB_MACHINE_EFI && __i386__]: Fix typo.
22028
22029
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
22030
22031
	Fix coreboot compilation.
22032
22033
	* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
22034
	Take VBE info into account even if only text is supported.
22035
	(fill_vbe_info): Take into account the case when only VGA text
22036
	is supported.
22037
	* include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): Set to zero
22038
	on coreboot, multiboot and qemu.
22039
22040
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
22041
22042
	* grub-core/lib/relocator.c (malloc_in_range): Trim too verbose
22043
	debug messages.
22044
	(grub_relocator_prepare_relocs): Set movers_chunk.srcv.
22045
22046
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
22047
22048
	* grub-core/loader/i386/bsd.c (grub_cmd_netbsd): Provide default serial
22049
	parameters.
22050
22051
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
22052
22053
	* grub-core/lib/arg.c (grub_arg_parse): Fix treating of all commands as
22054
	if they were BSD-style.
22055
22056
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
22057
22058
	* grub-core/boot/i386/pc/lnxboot.S: Replace
22059
	GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE with
22060
	GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART.
22061
22062
2010-09-29  Vladimir Serbinenko  <phcoder@gmail.com>
22063
22064
	Write embedding zone using Reed-Solomon.
22065
22066
	* Makefile.util.def (grub-setup): Add grub-core/lib/reed_solomon.c.
22067
	* grub-core/Makefile.am (rs_decoder.S): New target.
22068
	(kern/i386/pc/startup.S): Depend on rs_decoder.S.
22069
	* grub-core/kern/i386/pc/startup.S (reed_solomon_redundancy): New field.
22070
	(multiboot): Move to RS part.
22071
	(post_reed_solomon): New label.
22072
	(grub_boot_drive): Move to non-RS part since it's modified in memory
22073
	on boot.
22074
	Include rs_decoder.S.
22075
	* grub-core/lib/reed_solomon.c: New file.
22076
	* include/grub/offsets.h (GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY):
22077
	New definition.
22078
	(GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE): Removed.
22079
	(GRUB_KERNEL_I386_PC_RAW_SIZE): Updated.
22080
	(GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): New definition.
22081
	* include/grub/partition.h (grub_partition_map): Change prototype of
22082
	embed to allow returning additional sectors.
22083
	* include/grub/reed_solomon.h: New file.
22084
	* util/grub-setup.c (setup): Handle Reed-Solomon.
22085
22086
2010-09-28  Colin Watson  <cjwatson@ubuntu.com>
22087
22088
	* grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix
22089
	i386 and x86-64 definedness tests.
22090
22091
2010-09-27  Yves Blusseau  <blusseau@zetam.org>
22092
22093
	Fix generation of kernel_syms.lst
22094
22095
	* grub-core/Makefile.am (kernel_syms.lst): Fix value and position of
22096
	ASM_PREFIX
22097
22098
2010-09-26  Robert Millan  <rmh@gnu.org>
22099
22100
	Support degraded ZFS arrays in "grub-probe -t device" resolution.
22101
22102
	* grub-core/kern/emu/getroot.c (find_root_device_from_libzfs): When
22103
	the pool is an array of devices, iterate through it and return the
22104
	first device that passes a stat() test (instead of blindly returning
22105
	the first one).
22106
22107
2010-09-26  Robert Millan  <rmh@gnu.org>
22108
22109
	Build fixes for GNU/kFreeBSD.
22110
22111
	* Makefile.util.def: Add `$(LIBZFS) $(LIBNVPAIR)' library dependencies
22112
	to programs that require ZFS conversion.
22113
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Support
22114
	kernels that don't have FLOPPY_MAJOR.
22115
22116
2010-09-25  BVK Chaitanya  <bvk.groups@gmail.com>
22117
22118
	* grub-core/kern/emu/full.c (grub_emu_post_init):  Fix typo.
22119
22120
2010-09-25  BVK Chaitanya  <bvk.groups@gmail.com>
22121
22122
	Fix grub-emu build.
22123
22124
	* grub-core/kern/emu/main.c: Remove #include <getopt.h>.
22125
	* grub-core/kern/emu/full.c: Split grub_mdraid_{init,fini} into
22126
	mdraid09 and mdraid1x.
22127
22128
2010-09-24  Colin Watson  <cjwatson@ubuntu.com>
22129
22130
	Re-enable grub-extras.
22131
22132
	* autogen.sh: Create symlinks to ${GRUB_CONTRIB} if necessary to
22133
	avoid confusing Automake.  Run autogen only twice, once for the top
22134
	level and once for grub-core.  Add Makefile.util.def and
22135
	Makefile.core.def from extra modules to the appropriate autogen
22136
	invocations.  If Makefile.common exists in an extra module, include
22137
	it in both Makefile.util.am and grub-core/Makefile.core.am;
22138
	similarly, include any Makefile.util.common file in Makefile.util.am
22139
	and any Makefile.core.common file in grub-core/Makefile.core.am.
22140
	* conf/Makefile.common ($(top_srcdir)/grub-core/Makefile.core.am):
22141
	Depend on $(top_srcdir)/grub-core/Makefile.gcry.def.
22142
	($(top_srcdir)/grub-core/Makefile.gcry.def): Remove.
22143
	* grub-core/Makefile.am: Remove inclusion of Makefile.gcry.am.
22144
22145
	* gentpl.py (gvar_add): Turn GVARS into a set.
22146
	(global_variable_initializers): Sort global variables on output.
22147
	(vars_init): New function.
22148
	(first_time): Likewise.
22149
	(library): Ensure that non-global variable initialisations are
22150
	emitted before the first time we emit code for a library block.
22151
	Append to variables rather than setting them.  Only emit
22152
	noinst_LIBRARIES, BUILT_SOURCES, and CLEANFILES the first time for
22153
	each conditional path.
22154
	(program): installdir() emits an Autogen macro, so must be passed to
22155
	var_add rather than gvar_add.
22156
	(data): Likewise.
22157
	(script): Likewise.
22158
	(rules): New function, centralising handling for different target
22159
	types.  Set up Guile association lists for first_time and vars_init,
22160
	and send most output to a diversion so that variable initialisations
22161
	can be emitted first.
22162
	(module_rules): Use new rules function.
22163
	(kernel_rules): Likewise.
22164
	(image_rules): Likewise.
22165
	(library_rules): Likewise.
22166
	(program_rules): Likewise.
22167
	(script_rules): Likewise.
22168
	(data_rules): Likewise.
22169
22170
	* configure.ac: Add AC_PROG_LN_S, for the benefit of ntldr-img.
22171
22172
	* .bzrignore: Add contrib and grub-core/contrib.  Remove
22173
	grub-core/Makefile.gcry.am.
22174
22175
2010-09-24  Yves Blusseau  <blusseau@zetam.org>
22176
22177
	* grub-core/lib/LzFind.c: Add missing include.
22178
	* grub-core/lib/LzmaEnc.c: Likewise.
22179
	* grub-core/script/lexer.c: Likewise.
22180
	* grub-core/script/yylex.l: Likewise.
22181
	* util/grub-macho2img.c: Likewise.
22182
	* util/grub-menulst2cfg.c: Likewise.
22183
	* util/grub-mklayout.c: Likewise.
22184
	* util/grub-mkpasswd-pbkdf2.c
22185
	* util/grub-mkrelpath.c: Likewise.
22186
	* util/resolve.c: Likewise.
22187
22188
2010-09-24  BVK Chaitanya  <bvk.groups@gmail.com>
22189
22190
	* Makefile.util.def (example_unit_test): Add
22191
	grub-core/gnulib/libgnu.a.
22192
22193
2010-09-23  Grégoire Sutre  <gregoire.sutre@gmail.com>
22194
22195
	* grub-core/commands/acpihalt.c (get_sleep_type): Initialize prev.
22196
22197
2010-09-23  Vladimir Serbinenko  <phcoder@gmail.com>
22198
22199
	Support xz compression on yeeloong.
22200
22201
	* Makefile.util.def (grub-mkimage): Add $(LIBLZMA).
22202
	* configure.ac: Check for LZMA.
22203
	* grub-core/Makefile.core.def (xz_decompress): New target.
22204
	(none_decompress): Likewise.
22205
	* grub-core/boot/decompressor/minilib.c: New file.
22206
	* grub-core/boot/decompressor/none.c: Likewise.
22207
	* grub-core/boot/decompressor/xz.c: Likewise.
22208
	* grub-core/kern/mips/cache.S: Change to noreorder nomacro.
22209
	* grub-core/kern/mips/cache_flush.S: Likewise.
22210
	* grub-core/kern/i386/pc/lzma_decode.S: Remove dead code.
22211
	* grub-core/kern/mips/startup.S: Move first stage to ...
22212
	* grub-core/boot/mips/startup_raw.S: ...here. Change to noreorder
22213
	nomacro.
22214
	* grub-core/kern/mips/startup.S: Change to noreorder nomacro.
22215
	* grub-core/lib/mips/relocator_asm.S: Change to noreorder nomacro.
22216
	* grub-core/lib/xzembed/xz_dec_bcj.c [GRUB_EMBED_DECOMPRESSOR]:
22217
	Allocate statically.
22218
	* grub-core/lib/xzembed/xz_dec_lzma2.c [GRUB_EMBED_DECOMPRESSOR]:
22219
	Allocate statically or use scratch. Don't check CRC32.
22220
	* grub-core/lib/xzembed/xz_dec_stream.c [GRUB_EMBED_DECOMPRESSOR]:
22221
	Allocate statically. Don't check CRC32.
22222
	* include/grub/decompressor.h: New file.
22223
	* include/grub/offsets.h (GRUB_KERNEL_MIPS_YEELOONG_RAW_SIZE):
22224
	Removed.
22225
	(GRUB_KERNEL_MIPS_YEELOONG_UNCOMPRESSED_SIZE): New field.
22226
	(GRUB_KERNEL_MIPS_YEELOONG_TOTAL_MODULE_SIZE): Adjusted.
22227
	(GRUB_KERNEL_MIPS_YEELOONG_PREFIX): Likewise.
22228
	(GRUB_KERNEL_MIPS_YEELOONG_PREFIX_END): Likewise.
22229
	(GRUB_KERNEL_MACHINE_UNCOMPRESSED_SIZE): New define.
22230
	* util/grub-mkimage.c (grub_compression_t): New type.
22231
	(PLATFORM_FLAGS_DECOMPRESSORS): New flag.
22232
	(image_target_desc): New field default_compression.
22233
	(image_targets): Adjust yeeloong targets.
22234
	(compress_kernel_xz) [HAVE_LIBLZMA]: New function.
22235
	(compress_kernel): New parameter comp.
22236
	(generate_image): Likewise. Handle new compression case.
22237
	(options): New option --compression
22238
	(help): Likewise.
22239
	(main): Handle new option.
22240
22241
2010-09-22  Grégoire Sutre  <gregoire.sutre@gmail.com>
22242
22243
	* grub-core/kern/emu/hostdisk.c [__NetBSD__]: Define FLOPPY_MAJOR.
22244
22245
2010-09-22  Colin Watson  <cjwatson@ubuntu.com>
22246
22247
	* grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix
22248
	typo in __i386__ conditional.
22249
22250
2010-09-22  Vladimir Serbinenko  <phcoder@gmail.com>
22251
22252
	* grub-core/loader/multiboot_mbi2.c (GRUB_MACHINE_EFI): Add missing
22253
	include.
22254
22255
2010-09-22  Vladimir Serbinenko  <phcoder@gmail.com>
22256
22257
	Implement EFI and ACPI multiboot2 extensions.
22258
22259
	* grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare
22260
	new tags as supported.
22261
	(acpiv2_size): New function.
22262
	(grub_multiboot_get_mbi_size): Take new tags into account.
22263
	(grub_multiboot_make_mbi): Add new tags.
22264
	* include/grub/multiboot.h (GRUB_MACHINE_HAS_ACPI): New definition.
22265
22266
2010-09-21  Aleš Nesrsta <starous@volny.cz>
22267
22268
	* grub-core/bus/usb/serial/common.c (grub_usbserial_attach):
22269
	Added missing configuration of USB device.
22270
22271
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
22272
22273
	* grub-core/normal/menu_entry.c (run): Make sure we always return
22274
	a value.
22275
22276
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
22277
22278
	* grub-core/commands/efi/lsefimmap.c (grub_cmd_lsefimmap):
22279
	NumberOfPages is UINT64 according to the UEFI specification, not
22280
	UINTN.  Fix printf format.
22281
22282
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
22283
22284
	* grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Change type of
22285
	`err' to grub_usb_err_t.
22286
	Reported and tested by: KESHAV P.R.
22287
22288
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
22289
22290
	* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Make
22291
	tpart non-const, so that we can assign to it.  (Since this is a
22292
	typedef, the constness refers to the pointer rather than what it
22293
	points to.)
22294
22295
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
22296
22297
	* conf/Makefile.common (CPPFLAGS_GNULIB): Add
22298
	$(top_srcdir)/grub-core/gnulib as well as
22299
	$(top_builddir)/grub-core/gnulib.
22300
	Reported by: KESHAV P.R.
22301
22302
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
22303
22304
	* util/grub-install.in: Fix the bootloader ID option to be
22305
	consistently --bootloader-id, not --bootloader_id.
22306
	Reported by: KESHAV P.R.
22307
22308
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
22309
22310
	* grub-core/commands/hashsum.c (GRUB_MOD_INIT): Make "Compute or
22311
	check hash checksum." consistently translatable.
22312
22313
2010-09-21  Yves Blusseau  <blusseau@zetam.org>
22314
22315
	* conf/Makefile.common (CPPFLAGS_GNULIB): Replace $(top_srcdir) with
22316
	$(top_builddir).
22317
22318
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
22319
22320
	* grub-core/commands/hashsum.c (aliases): Add sha1sum alias.
22321
	(GRUB_MOD_INIT): Register sha1sum command.
22322
	(GRUB_MOD_FINI): Unregister sha1sum command.
22323
22324
2010-09-21  Yves Blusseau  <blusseau@zetam.org>
22325
22326
	Keep boot and grub directory names in sync with utils scripts
22327
22328
	* configure.ac: Define GRUB_BOOT_DIR_NAME and GRUB_DIR_NAME macros.
22329
	* config.h.in: Add previous macros.
22330
	* include/grub/emu/misc.h (DEFAULT_DIRECTORY): Use previous macros.
22331
	* util/grub-install.in: Use $bootdir and $grubdir variables.
22332
22333
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
22334
22335
	* grub-core/kern/emu/hostdisk.c (find_system_device): Only try to
22336
	convert partition names to disk names if the new `convert' parameter
22337
	is set.
22338
	(grub_util_biosdisk_get_grub_dev): If opening the disk device
22339
	returns GRUB_ERR_UNKNOWN_DEVICE, treat the partition device as a
22340
	disk in its own right.  This can happen with Xen disk images.
22341
22342
2010-09-21  Yves Blusseau  <blusseau@zetam.org>
22343
22344
	* util/grub-editenv.c: Update strings to avoid warnings when generating
22345
	grub.pot file.
22346
	* util/grub-setup.c: Likewise.
22347
22348
2010-09-21  Vladimir Serbinenko  <phcoder@gmail.com>
22349
22350
	* configure.ac: Change version to 1.99~beta0.
22351
22352
2010-09-21  Vladimir Serbinenko  <phcoder@gmail.com>
22353
22354
	* grub-core/loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap):
22355
	Add BADRAM.
22356
	* grub-core/loader/multiboot_mbi2.c (grub_fill_multiboot_mmap):
22357
	Likewise.
22358
	* include/multiboot.h: Resynced with specification.
22359
	* include/multiboot2.h: Likewise.
22360
22361
2010-09-21  Colin Watson  <cjwatson@ubuntu.com>
22362
22363
	Fix po directory handling.
22364
22365
	* configure.ac: Create po/Makefile.in rather than po/Makefile.
22366
	* grub-core/gnulib/Makefile.am: Import gettext module.
22367
	* m4/gnulib-cache.m4: Likewise.
22368
	* m4/gnulib-comp.m4: Likewise.
22369
	* m4/gettext.m4: New file, from gnulib.
22370
	* m4/glibc2.m4: Likewise.
22371
	* m4/iconv.m4: Likewise.
22372
	* m4/intdiv0.m4: Likewise.
22373
	* m4/intl.m4: Likewise.
22374
	* m4/intldir.m4: Likewise.
22375
	* m4/intlmacosx.m4: Likewise.
22376
	* m4/intmax.m4: Likewise.
22377
	* m4/inttypes-pri.m4: Likewise.
22378
	* m4/lcmessage.m4: Likewise.
22379
	* m4/lib-ld.m4: Likewise.
22380
	* m4/lib-link.m4: Likewise.
22381
	* m4/lib-prefix.m4: Likewise.
22382
	* m4/lock.m4: Likewise.
22383
	* m4/nls.m4: Likewise.
22384
	* m4/po.m4: Likewise.
22385
	* m4/printf-posix.m4: Likewise.
22386
	* m4/progtest.m4: Likewise.
22387
	* m4/threadlib.m4: Likewise.
22388
	* m4/uintmax_t.m4: Likewise.
22389
	* m4/visibility.m4: Likewise.
22390
	* po/Makefile.am: Remove.
22391
	* po/Makefile.in.in: New file, from gettext.
22392
	($(DOMAIN).pot-update): Support POTFILES-shell.
22393
	* po/Makevars: New file.
22394
	* po/POTFILES-shell: Rename to ...
22395
	* po/POTFILES-shell.in: ... this.  Update.
22396
	* po/POTFILES: Rename to ...
22397
	* po/POTFILES.in: ... this.  Update.
22398
	* po/Rules-quot: New file, from gettext.
22399
	* po/boldquot.sed: Likewise.
22400
	* po/en@boldquot.header: Likewise.
22401
	* po/en@quot.header: Likewise.
22402
	* po/insert-header.sin: Likewise.
22403
	* po/quot.sed: Likewise.
22404
	* po/remove-potcdate.sin: Likewise.
22405
22406
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22407
22408
	* util/grub.d/10_kfreebsd.in (kfreebsd_entry): Use UUID when possible.
22409
22410
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22411
22412
	* util/grub.d/20_linux_xen.in: Use submenus.
22413
22414
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22415
22416
	Support submenus.
22417
22418
	* grub-core/commands/menuentry.c (grub_normal_add_menu_entry): New
22419
	parameter submenu. All users updated.
22420
	* grub-core/normal/main.c (free_menu): Rename to ...
22421
	(grub_normal_free_menu): ... this. Made global.
22422
	* grub-core/normal/menu.c (grub_menu_execute_entry): Open new context
22423
	if requested.
22424
	* grub-core/normal/menu_entry.c (screen): New field submenu.
22425
	(make_screen): Set submenu.
22426
	(run): Open new context if requested.
22427
	* include/grub/menu.h (grub_menu_entry): New field submenu.
22428
	* include/grub/normal.h (grub_normal_free_menu): New proto.
22429
22430
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22431
22432
	Menu entries extractor.
22433
22434
	* grub-core/commands/configfile.c (grub_cmd_source): Implement extractor
22435
	variants.
22436
	(GRUB_MOD_INIT): Register new variants.
22437
	(GRUB_MOD_FINI): Unregister new variants.
22438
	* grub-core/commands/legacycfg.c (grub_cmd_legacy_configfile): Merge
22439
	into grub_cmd_legacy_source.
22440
	(grub_cmd_legacy_source): Implement extractor variants.
22441
	(GRUB_MOD_INIT): Register new variants.
22442
	(GRUB_MOD_FINI): Unregister new variants.
22443
	* grub-core/commands/menuentry.c (grub_menu_init): Declare menuentry
22444
	as an extractor.
22445
	* grub-core/commands/search_wrap.c (GRUB_MOD_INIT): Declare
22446
	search as an extractor.
22447
	* grub-core/commands/test.c (GRUB_MOD_INIT): Declare
22448
	test as an extractor.
22449
	* grub-core/kern/corecmd.c (grub_register_core_commands): Declare set
22450
	as an extractor.
22451
	* grub-core/normal/context.c (grub_env_context_open): Reorganised.
22452
	(grub_env_new_context): New function.
22453
	(grub_env_context_open): Likewise.
22454
	(grub_env_extractor_open): Likewise.
22455
	(grub_env_extractor_close): Likewise.
22456
	* grub-core/script/execute.c (grub_script_execute_cmdline): Handle
22457
	grub_extractor_level.
22458
	* include/grub/command.h (GRUB_COMMAND_FLAG_EXTRACTOR): New flag.
22459
	* include/grub/env.h (grub_env_extractor_open): New proto.
22460
	(grub_env_extractor_close): Likewise.
22461
	* include/grub/normal.h (grub_extractor_level): New external variable.
22462
22463
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22464
22465
	Make cutmem accept a region specification.
22466
	Suggested by: Samuel Thibault
22467
22468
	* grub-core/mmap/mmap.c (parsemem): New function.
22469
	(grub_cmd_cutmem): Handle new arguments.
22470
22471
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22472
22473
	New command cutmem.
22474
22475
	* grub-core/mmap/mmap.c (grub_cmd_cutmem): New function.
22476
	(GRUB_MOD_INIT): Register new command.
22477
	(GRUB_MOD_FINI): Unregister new command.
22478
22479
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22480
22481
	Support some annoying BSD and Minix subpartitions.
22482
22483
	* Makefile.util.def (libgrub.a): Add grub-core/partmap/bsdlabel.c.
22484
	* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name):
22485
	Properly handle concatenation.
22486
	* grub-core/kern/device.c (grub_device_iterate): Likewise.
22487
	* grub-core/normal/completion.c (iterate_partition): Likewise.
22488
	* grub-core/kern/disk.c (grub_disk_open): Make disk->name not
22489
	contain partition. All users updated.
22490
	* grub-core/partmap/bsdlabel.c (grub_netbsdlabel_partition_map): New
22491
	struct.
22492
	(grub_openbsdlabel_partition_map): Likewise.
22493
	(bsdlabel_partition_map_iterate): Rename to ..
22494
	(iterate_real): ... this. New arguments sector, freebsd and pmap.
22495
	(bsdlabel_partition_map_iterate): New function.
22496
	(netopenbsdlabel_partition_map_iterate): Likewise.
22497
	(netbsdlabel_partition_map_iterate): Likewise.
22498
	(openbsdlabel_partition_map_iterate): Likewise.
22499
	(GRUB_MOD_INIT): Register new partmaps.
22500
	(GRUB_MOD_FINI): Unregister new partmaps.
22501
	* grub-core/partmap/msdos.c (pc_partition_map_iterate): Rename to ...
22502
	(grub_partition_msdos_iterate): ... this. All users updated.
22503
	Don't support embedding other than in a minix partition.
22504
	* include/grub/msdos_partition.h (grub_partition_msdos_iterate): New
22505
	proto.
22506
	* include/grub/partition.h (grub_partition): New field msdostype.
22507
	* util/grub-install.in: Handle openbsd and netbsd types being in
22508
	part_bsd module.
22509
22510
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22511
22512
	Split mdraid.mod into mdraid09.mod and mdraid1x.mod.
22513
22514
	* Makefile.util.def (libgrub.a): Add grub-core/disk/mdraid1x_linux.c.
22515
	* grub-core/Makefile.core.def (mdraid): Renamed to ...
22516
	(mdraid09): ... this.
22517
	(mdraid1x): New module.
22518
	* grub-core/disk/mdraid_linux.c: Move 1.x parts ...
22519
	* grub-core/disk/mdraid1x_linux.c: ...here. All users updated.
22520
22521
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22522
22523
	* grub-core/kern/emu/misc.c (asprintf): Use vsnprintf instead of
22524
	vsprintf.
22525
22526
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
22527
22528
	* grub-core/commands/efi/lsefimmap.c: Correct header.
22529
	* NEWS: Update.
22530
22531
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
22532
22533
	* util/grub-editenv.c (argp_parser): Don't pass translated strings
22534
	as printf format strings; the translations might contain '%' which
22535
	could cause a crash.
22536
	(main): Likewise.
22537
	* util/grub-fstest.c (argp_parser): Likewise.
22538
	* util/grub-setup.c (argp_parser): Likewise.
22539
	(main): Likewise.
22540
22541
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22542
22543
	Use argp in grub-fstest.
22544
22545
	* util/grub-fstest.c: Don't include getopt.h.
22546
	Include argp.h.
22547
	(root): New variable.
22548
	(args_count): Likewise.
22549
	(nparm): Likewise.
22550
	(num_disks): Likewise.
22551
	(images): Likewise.
22552
	(cmd): Likewise.
22553
	(debug_str): Likewise.
22554
	(args): Likewise.
22555
	(options): Transformed to argp.
22556
	(usage): Removed.
22557
	(main): Split argument parsing into ...
22558
	(argp_parser): ... this. Changed to argp format.
22559
	(argp): New variable.
22560
	(main): Use argp_parse.
22561
22562
2010-09-20  Tristan Gingold  <gingold@free.fr>
22563
2010-09-20  Robert Millan  <rmh.grub@aybabtu.com>
22564
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22565
22566
	* grub-core/commands/efi/lsefimmap.c: New file.
22567
	* grub-core/Makefile.core.def (lsefimmap): New module.
22568
	* include/grub/efi/api.h (PRIxGRUB_EFI_UINTN_T): New definition.
22569
22570
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22571
22572
	Pause the execution (10s max) if any errors are displayed so the user
22573
	has a chance to see them.
22574
22575
	* grub-core/kern/err.c (grub_err_printed_errors): New variable.
22576
	(grub_print_error): Increment grub_err_printed_errors.
22577
	* grub-core/normal/menu.c (grub_menu_execute_entry): Pause the
22578
	execution if any errors were displayed.
22579
	(show_menu): Remove old code for pause.
22580
	* grub-core/normal/menu_entry.c (run): Likewise.
22581
	* grub-core/normal/term.c (grub_normal_char_counter): Removed. All
22582
	users updated.
22583
	(grub_normal_get_char_counter): Likewise.
22584
	* include/grub/err.h (grub_err_printed_errors): New external variable.
22585
	* include/grub/normal.h (grub_normal_get_char_counter): Removed.
22586
22587
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22588
22589
	Support multiboot VBE info.
22590
22591
	* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
22592
	Take VBE info into account.
22593
	(fill_vbe_info) [GRUB_MACHINE_HAS_VBE]: New function.
22594
	(retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]:
22595
	Call fill_vbe_info when appropriate.
22596
	(grub_multiboot_make_mbi): Account for the size occupied by VBE info.
22597
	* grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare tags
22598
	as supported.
22599
	(grub_multiboot_get_mbi_size): Take new tags into account.
22600
	(fill_vbe_tag) [GRUB_MACHINE_HAS_VBE]: New function.
22601
	(retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]:
22602
	Call fill_vbe_tag when appropriate.
22603
	(grub_multiboot_make_mbi): Properly align tags.
22604
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_pm_interface): New
22605
	function.
22606
	* include/grub/i386/pc/vbe.h (grub_vbe_bios_get_pm_interface): New
22607
	proto.
22608
	* include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): New definition.
22609
22610
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22611
22612
	Suport manual terminal geometry specification.
22613
22614
	* grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_dimensions):
22615
	Save state in grub_ofconsole_terminfo_output.
22616
	(grub_ofconsole_term): Use grub_terminfo_getwh.
22617
	(grub_ofconsole_getwh): Removed.
22618
	* grub-core/term/serial.c (grub_serial_getwh): Removed.
22619
	(grub_serial_term): Use grub_terminfo_getwh.
22620
	* grub-core/term/terminfo.c (grub_terminfo_getwh): New function.
22621
	(options): New struct.
22622
	(OPTION_*): New enum.
22623
	(grub_cmd_terminfo): Transform into extcmd and handle new parameters.
22624
	* include/grub/terminfo.h (grub_terminfo_output_state): New fields
22625
	width and height.
22626
	(grub_terminfo_getwh): New proto.
22627
	* grub-core/lib/legacy_parse.c (grub_legacy_parse): Handle --lines.
22628
22629
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22630
22631
	Handle legacy "terminal" command.
22632
22633
	* grub-core/lib/legacy_parse.c (legacy_command): New flags FLAG_TITLE
22634
	and FLAG_TERMINAL.
22635
	(legacy_commands): Add terminal and title.
22636
	(grub_legacy_parse): Handle terminal. Simplify title handling.
22637
22638
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22639
22640
	* grub-core/lib/arg.c (grub_arg_show_help): Correctly handle
22641
	parameters overflow.
22642
22643
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
22644
22645
	* .bzrignore: Add grub-core/gnulib/sys, widthspec.bin, and
22646
	widthspec.h.
22647
22648
	* docs/grub.texi (Shell-like scripting): Document `!'.
22649
	(Network): Simplify using new i386-pc-pxe format.  Mention
22650
	grub-mknetdir.
22651
22652
	* NEWS: Update.
22653
22654
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
22655
22656
	* Makefile.am (SUBDIRS): Restore "."; it's important to force
22657
	ordering, so that e.g. ascii.h is built before grub-core/font/font.c
22658
	when needed.
22659
22660
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
22661
22662
	* grub-core/commands/efi/lsefisystab.c: Correct header.
22663
	* grub-core/commands/efi/lssal.c: Likewise.
22664
	* grub-core/commands/testload.c: Likewise.
22665
22666
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
22667
22668
	* util/grub-mkrescue.in: Add explicit root argument to --set to
22669
	prevent the UUID being interpreted as an argument to --set (matches
22670
	previous change to prepare_grub_to_access_device).
22671
22672
2010-09-20  Colin Watson  <cjwatson@ubuntu.com>
22673
22674
	* kern/emu/hostdisk.c: Include <sys/ioctl.h> and <sys/disklabel.h>
22675
	on FreeBSD.  Define HAVE_DIOCGDINFO on NetBSD and FreeBSD to reduce
22676
	the verbosity of later #ifs.
22677
	(find_partition_start): Define this function on FreeBSD too.
22678
	(device_is_wholedisk) [__FreeBSD__ || __FreeBSD_kernel__]: New
22679
	function.
22680
	(grub_util_biosdisk_get_grub_dev): Use partition-start-sector logic
22681
	on FreeBSD.
22682
22683
2010-09-20  Yves Blusseau  <blusseau@zetam.org>
22684
22685
	* util/grub-editenv.c: Use argp instead of getopt.
22686
22687
2010-09-20  Yves Blusseau  <blusseau@zetam.org>
22688
22689
	* util/grub-setup.c: Use argp instead of getopt.
22690
22691
2010-09-20  Yves Blusseau  <blusseau@zetam.org>
22692
22693
	Use gnulib-tool to create gnulib source files.
22694
22695
	* Add gnulib files generated by gnulib-tool in build-aux, m4 and
22696
	grub-core/gnulib directories
22697
	* .bzignore: Add **/.deps and autogenerated gnulib files
22698
	* configure.ac: Assign auxiliary directory to build-aux, add invocation
22699
	of gnulib macros, add grub-core/gnulib/Makefile
22700
	* Makefile.am: Add gnulib directory in SUBDIRS (removing unnecessary .),
22701
	include m4 directory to aclocal.
22702
	* Makefile.util.def: Remove direct compilation of gnulib source files
22703
	and use the new grub-core/gnulib/libgnu.a.
22704
	* build-aux/config.rpath: move config.rpath from top directory to
22705
	build-aux
22706
	* conf/Makefile.common: Remove the macro _GL_UNUSED already defined
22707
	in gnulib headers
22708
	* conf/Makefile.extra-dist: Add m4/gnulib-cache.m4
22709
	* grub-core/Makefile.core.def: Remove unnecessary extra_dist
22710
	* grub-core/lib/posix_wrap/localcharset.h (locale_charset): Update
22711
	header.
22712
	* grub-core/lib/posix_wrap/langinfo.h (nl_langinfo): Return static
22713
	string.
22714
22715
2010-09-20  Yves Blusseau  <blusseau@zetam.org>
22716
22717
	* .bzrignore: Add grub-kbdcomp, grub-menulst2cfg, *.marker,
22718
	grub-core/genmod.sh and grub-core/gensyminfo.sh
22719
22720
2010-09-20  BVK Chaitanya  <bvk.groups@gmail.com>
22721
22722
	Add a test for echo command options.
22723
22724
	* tests/grub_cmd_echo.in: New test.
22725
	* Makefile.util.def: Rules for new test.
22726
22727
2010-09-20  Szymon Janc <szymon@janc.net.pl>
22728
22729
	Remove crc.mod and move crc command to hashsum.mod.
22730
	Remove lib/crc.c - users updated to use gcrypt implementation.
22731
22732
	* grub-core/commands/crc.c: Removed.
22733
	* grub-core/Makefile.core.def (crc): Module removed.
22734
	* grub-core/commands/hashsum.c (aliases[]): Add crc alias.
22735
	* grub-core/commands/hashsum.c (GRUB_MOD_INIT): Register crc command.
22736
	* grub-core/commands/hashsum.c (GRUB_MOD_FINI): Unregister crc command.
22737
	* grub-core/lib/crc.c: Removed.
22738
	* include/grub/lib/crc.h: Removed.
22739
	* Makefile.util.def (crc): Remove lib/crc.c
22740
	* grub-core/Makefile.core.def (libgrub.a): Remove grub-core/lib/crc.c.
22741
	* util/grub-fstest.c (cmd_crd): Use libgcrypt crc implementation.
22742
	* Makefile.util.def (libgrub.a): Add grub-core/lib/libgcrypt-grub/cipher/crc.c.
22743
	* Makefile.util.def (grub-fstest): Add CFLAGS_GCRY to cflags.
22744
	* Makefile.util.def (grub-fstest): Add CPPFLAGS_GCRY to cppflags.
22745
	* grub-core/efiemu/prepare.c (grub_efiemu_crc): Use libgcrypt crc implementation.
22746
22747
2010-09-20  Vladimir Serbinenko  <phcoder@gmail.com>
22748
22749
	* grub-core/boot/i386/pc/boot.S: Ignore %dl if it's not in a sane range.
22750
22751
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
22752
22753
	Split config.h for util and core.
22754
22755
	* acinclude.m4 (HAVE_ASM_USCORE): Transformed into a variable.
22756
	(ADDR32): Likewise.
22757
	(DATA32): Likewise.
22758
	(BSS_START_SYMBOL): Likewise.
22759
	(END_SYMBOL): Likewise.
22760
	(NEED_ENABLE_EXECUTE_STACK): Likewise. All users updated.
22761
	(grub_I386_ASM_ABSOLUTE_WITHOUT_ASTERISK): Removed.
22762
	* config.h.in: New file.
22763
	* configure.ac: Use config-util.h as config define file.
22764
	Rename MACHINE into GRUB_MACHINE. All users updated.
22765
	(NEED_REGISTER_FRAME_INFO): Transformed into a variable. All users
22766
	updated.
22767
	(NESTED_FUNC_ATTR): Likewise.
22768
	Substitue new variables.
22769
	(COND_HAVE_ASM_USCORE): New conditional.
22770
	* grub-core/Makefile.am (ASM_PREFIX): New variable.
22771
	(kernel_syms.lst): Use ASM_PREFIX.
22772
	* grub-core/kern/emu/console.c: Include config-util.h.
22773
	* grub-core/kern/emu/misc.c: Likewise.
22774
	* grub-core/kern/emu/mm.c: Likewise.
22775
	* include/grub/emu/misc.h: Likewise.
22776
	* include/grub/libgcc.h: Likewise.
22777
22778
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
22779
22780
	* grub-core/term/efi/console.c (efi_codes): Fix GRUB_TERM_KEY_*
22781
	constants usage.
22782
	* grub-core/kern/emu/console.c (grub_ncurses_getkey):
22783
	Fix GRUB_TERM_KEY_* constants usage.
22784
	* grub-core/kern/emu/misc.c (asprintf): Fix vasprintf usage.
22785
22786
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
22787
22788
	* grub-core/bus/usb/ohci.c (grub_ohci_cancel_transfer): Use %p to
22789
	print pointer.
22790
	* grub-core/bus/usb/uhci.c: Remove empty define.
22791
	(grub_uhci_check_transfer): Add missing cast.
22792
	* grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Use %p to
22793
	print pointer.
22794
	* grub-core/term/usb_keyboard.c (grub_usb_keyboard_getkey): Use
22795
	PRIuGRUB_SIZE.
22796
	* include/grub/types.h (PRIuGRUB_SIZE): New definition.
22797
22798
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
22799
22800
	* grub-core/Makefile.core.def (legacycfg): Add
22801
	lib/i386/pc/vesa_modes_table.c on emu.
22802
22803
2010-09-19  BVK Chaitanya  <bvk.groups@gmail.com>
22804
22805
	Reduce number of temporary files generated by build system.
22806
22807
	* grub-core/gencmdlist.sh: Removed.
22808
	* grub-core/genfslist.sh: Removed.
22809
	* grub-core/genhandlerlist.sh: Removed.
22810
	* grub-core/genmodsrc.sh: Removed.
22811
	* grub-core/genpartmaplist.sh: Removed.
22812
	* grub-core/genparttoollist.sh: Removed.
22813
	* grub-core/gentermiinallist.sh: Removed.
22814
	* grub-core/genvideolist.sh: Removed.
22815
22816
	* grub-core/genmod.sh.in: New file.
22817
	* grub-core/gensyminfo.sh.in: New file.
22818
22819
	* conf/Makefile.common (CPPFLAGS_*_LIST): New marker flags.
22820
	* conf/Makefile.extra-dist: Update with new files.
22821
	* gentpl.py: Remove rules related to unnecessary temporary files.
22822
	* grub-core/Makefile.am (syminfo.lst): New replacement for def-*
22823
	and und-* files.
22824
	* grub-core/Makefile.core.def: New rules for gensyminfo.sh and
22825
	genmod.sh scripts.
22826
	* grub-core/bus/usb/uhci.c: Remove empty #define.
22827
	* grub-core/genmoddep.awk: Updated with new syminfo format.
22828
	* util/bash-completion.d/Makefile.am: Add config.log to
22829
	CLEANFILES.
22830
22831
2010-09-19  Yves Blusseau  <blusseau@zetam.org>
22832
22833
	* Makefile.util.def: Add forgotten $(LIBINTL) library.
22834
22835
2010-09-19  BVK Chaitanya  <bvk.groups@gmail.com>
22836
22837
	* util/grub-mkconfig.in: Check the config script for syntax errors
22838
	before saving.
22839
22840
2010-09-19  Colin Watson  <cjwatson@ubuntu.com>
22841
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
22842
22843
	* Makefile.util.def (grub-install): Use util/grub-install.in on all
22844
	platforms.
22845
	* util/grub-install.in: Add EFI and IEEE1275 support.
22846
	* util/i386/efi/grub-install.in: Removed.
22847
	* util/ieee1275/grub-install.in: Likewise.
22848
22849
2010-09-19  Vladimir Serbinenko  <phcoder@gmail.com>
22850
22851
	* grub-core/commands/i386/cmostest.c (+parse_args): New function.
22852
	(grub_cmd_cmosclean): Likewise.
22853
	(GRUB_MOD_INIT): Register command cmosclean.
22854
	* util/grub-mkconfig.in: Export GRUB_BUTTON_CMOS_CLEAN.
22855
	* util/grub.d/00_header.in: Handle GRUB_BUTTON_CMOS_CLEAN.
22856
22857
2010-09-18  Carles Pina i Estany  <carles@pina.cat>
22858
2010-09-18  Aleš Nesrsta <starous@volny.cz>
22859
2010-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
22860
22861
	Add keyboard layouts support.
22862
22863
	* Makefile.util.def (grub-mklayout): New file.
22864
	(grub-kbdcomp): New script.
22865
	* grub-core/Makefile.am (KERNEL_HEADER_FILES) [COND_mips_yeeloong]:
22866
	Add keyboard_layouts.h.
22867
	* grub-core/Makefile.core.def (kernel): Add commands/keylayouts.c and
22868
	commands/boot.c on yeeloong.
22869
	(keylayouts): New module.
22870
	* grub-core/bus/usb/ohci.c
22871
	* grub-core/bus/usb/uhci.c
22872
	* grub-core/bus/usb/usbhub.c (rescan): New variable.
22873
	(grub_usb_add_hub): Poll interrupt pipe for device handling.
22874
	(attach_root_port): Likewise.
22875
	(poll_nonroot_hub): Likewise.
22876
	(grub_usb_poll_devices): Likewise.
22877
	(detach_device): Close transfer.
22878
	* grub-core/bus/usb/usbtrans.c (grub_usb_execute_and_wait_transfer): New
22879
	function.
22880
	(grub_usb_bulk_setup_readwrite): Likewise.
22881
	(grub_usb_bulk_finish_readwrite): Likewise.
22882
	* grub-core/commands/keylayouts.c: New file.
22883
	* grub-core/commands/keystatus.c (grub_getkeystatus): New function.
22884
	* grub-core/commands/menuentry.c (hotkey_aliases): All several new
22885
	aliases.
22886
	* grub-core/term/at_keyboard.c: Restructured to use keylayouts and
22887
	support scancode 2.
22888
	* grub-core/term/usb_keyboard.c: Restructured to use keylayouts.
22889
	* include/grub/keyboard_layouts.h: New file.
22890
	* util/grub-mklayout.c: New file.
22891
	* util/grub-kbdcomp.in: Likewise.
22892
22893
2010-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
22894
22895
	Unify memory types.
22896
22897
	* grub-core/Makefile.am (KERNEL_HEADER_FILES): Include memory.h.
22898
	* grub-core/commands/lsmmap.c (grub_cmd_lsmmap): Output user-readable
22899
	types.
22900
	* grub-core/kern/i386/multiboot_mmap.c (grub_lower_mem): Removed.
22901
	(grub_upper_mem): Likewise.
22902
	* grub-core/kern/ieee1275/init.c (grub_upper_mem): Likewise.
22903
	* include/grub/memory.h (grub_memory_type_t): New enum.
22904
	All users updated.
22905
22906
2010-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
22907
22908
	* grub-core/Makefile.core.def (lsapm): New module.
22909
	* grub-core/commands/i386/pc/lsapm.c: New file.
22910
	* grub-core/loader/i386/multiboot_mbi.c (make_mbi) [GRUB_MACHINE_PCBIOS]: Pass APM info.
22911
	* grub-core/loader/multiboot_mbi2.c (make_mbi) [GRUB_MACHINE_PCBIOS]:
22912
	Likewise.
22913
	* include/grub/i386/pc/apm.h: New file.
22914
	* include/multiboot.h (multiboot_apm_info): New struct.
22915
22916
2010-09-18  Vladimir Serbinenko  <phcoder@gmail.com>
22917
22918
	GRUB-legacy configuration file support.
22919
22920
	* Makefile.util.def (grub-menulst2cfg): New util.
22921
	* docs/man/grub-menulst2cfg.h2m: New file.
22922
	* grub-core/Makefile.core.def (legacycfg): New module.
22923
	* grub-core/commands/legacycfg.c: New file.
22924
	* grub-core/commands/menuentry.c (append_menu_entry): Rename to ...
22925
	(grub_normal_add_menu_entry): ... this.
22926
	* grub-core/commands/password.c (grub_cmd_password): Split main part to ...
22927
	(grub_normal_set_password): ...this.
22928
	* grub-core/commands/videoinfo.c (grub_cmd_videoinfo): Support MODE.
22929
	* grub-core/loader/i386/linux.c (linux_vesafb_res): Move to ..,
22930
	* grub-core/lib/i386/pc/vesa_modes_table.c: ... here.
22931
	* grub-core/lib/legacy_parse.c: New file.
22932
	* grub-core/normal/auth.c (grub_cmd_authenticate): New command.
22933
	* include/grub/i386/pc/vesa_modes_table.h: New file.
22934
	* include/grub/legacy_parse.h: Likewise.
22935
	* include/grub/normal.h (grub_normal_add_menu_entry): New proto.
22936
	* util/grub-menulst2cfg.c: New file.
22937
22938
2010-09-17  Colin Watson  <cjwatson@ubuntu.com>
22939
22940
	* grub-core/kern/emu/hostdisk.c
22941
	(convert_system_partition_to_system_disk): Initialise node.
22942
22943
2010-09-17  Colin Watson  <cjwatson@ubuntu.com>
22944
22945
	* grub-core/kern/emu/hostdisk.c
22946
	(convert_system_partition_to_system_disk): Fix devmapper memory pool
22947
	leak.
22948
	Reported and based on patch by: Modestas Vainius.
22949
22950
2010-09-17  Colin Watson  <cjwatson@ubuntu.com>
22951
22952
	Fix DM-RAID probing with recent versions of device-mapper udev
22953
	rules.
22954
22955
	* grub-core/kern/emu/hostdisk.c (read_device_map): Don't
22956
	canonicalise device paths under /dev/mapper/.
22957
	(convert_system_partition_to_system_disk): Compare the
22958
	uncanonicalised path to /dev/mapper/ rather than the canonicalised
22959
	path, since device nodes under /dev/mapper/ are often symlinks.
22960
22961
2010-09-17  Yves Blusseau  <blusseau@zetam.org>
22962
22963
	* .bzrignore: *.d removed (old rule), add *.image and symlist.h.
22964
22965
2010-09-16  Yves Blusseau  <blusseau@zetam.org>
22966
22967
	* configure.ac: Avoid some annoying error messages if freetype-config
22968
	program is not found.
22969
22970
2010-09-16  Colin Watson  <cjwatson@ubuntu.com>
22971
22972
	Support RAID on virtio devices, and others.
22973
22974
	* grub-core/kern/emu/getroot.c [__MINGW32__] (find_root_device):
22975
	Rename to ...
22976
	[__MINGW32__] (grub_find_device): ... this.
22977
	[! __MINGW32__ && ! __CYGWIN__] (find_root_device): Rename to ...
22978
	[! __MINGW32__ && ! __CYGWIN__] (grub_find_device): ... this.  Use a
22979
	reasonable default if dir is NULL.
22980
	[! __MINGW32__ && __CYGWIN__] (find_cygwin_root_device): Rename to
22981
	...
22982
	[! __MINGW32__ && __CYGWIN__] (grub_find_device): ... this.
22983
	(grub_guess_root_device): Update callers.
22984
	* include/grub/emu/getroot.h (grub_find_device): Add prototype.
22985
22986
	* util/raid.c (grub_util_getdiskname): Remove.
22987
	(grub_util_raid_getmembers): Use grub_find_device rather than
22988
	grub_util_getdiskname.
22989
22990
2010-09-16  Colin Watson  <cjwatson@ubuntu.com>
22991
22992
	* docs/grub.texi (serial): Remove obsolete comment about GRUB
22993
	needing to be compiled with serial support.
22994
	(ls): Indicate that multiple files are accepted.
22995
	* grub-core/commands/ls.c (GRUB_MOD_INIT): Update help text to
22996
	indicate that multiple files are accepted.
22997
22998
2010-09-16  Colin Watson  <cjwatson@ubuntu.com>
22999
23000
	* .bzrignore: Add *.1, *.8, grub-shell, grub-shell-tester,
23001
	libgrub_a_init.c, and util/bash-completion.d/grub.
23002
23003
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
23004
23005
	* util/grub-setup.c (setup): Fix incorrect container semantics.
23006
23007
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
23008
23009
	* grub-core/commands/parttool.c (grub_cmd_parttool): Fix a variable
23010
	misusage.
23011
	Reported by: J. Nick Terry
23012
23013
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
23014
23015
	Move embedding routines to partmap sources files.
23016
23017
	* grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot)
23018
	[GRUB_UTIL]: New variable.
23019
	(gpt_partition_map_iterate): Set part.parent.
23020
	(gpt_partition_map_embed) [GRUB_UTIL]: New function.
23021
	(grub_gpt_partition_map) [GRUB_UTIL]: Set .embed.
23022
	* grub-core/partmap/msdos.c (pc_partition_map_embed) [GRUB_UTIL]:
23023
	New function.
23024
	(grub_msdos_partition_map) [GRUB_UTIL]: Set .embed.
23025
	* include/grub/partition.h (grub_embed_type_t) [GRUB_UTIL]: New type.
23026
	(grub_partition_map) [GRUB_UTIL]: New field embed.
23027
	* util/grub-setup.c (grub_gpt_partition_type_bios_boot): Removed.
23028
	(setup): Use ->embed.
23029
23030
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
23031
23032
	* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): New
23033
	function.
23034
	* include/grub/emu/hostdisk.h (grub_util_biosdisk_is_floppy): New proto.
23035
	* util/grub-setup.c (setup): Use grub_util_biosdisk_is_floppy.
23036
23037
2010-09-15  Yves Blusseau  <blusseau@zetam.org>
23038
23039
	Add function to get completions from usage.
23040
23041
	* util/bash-completion.d/grub-completion.bash.in: Add function to get
23042
	completions from usage. Use LC_ALL=C to get options properly.
23043
23044
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
23045
23046
	* grub-core/gnulib/basename-lgpl.c: Imported.
23047
	* grub-core/gnulib/basename.c: Likewise.
23048
	* grub-core/gnulib/dirname-lgpl.c: Likewise.
23049
	* grub-core/gnulib/dirname.c: Likewise.
23050
	* grub-core/gnulib/dirname.h: Likewise.
23051
	* grub-core/gnulib/stripslash.c: Likewise.
23052
23053
2010-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
23054
23055
	* grub-core/gnulib/error.c: Resynced.
23056
	* grub-core/gnulib/getopt.c: Likewise.
23057
	* grub-core/gnulib/getopt_int.h: Likewise.
23058
	* grub-core/gnulib/regex.h: Likewise.
23059
	* grub-core/gnulib/regex_internal.c: Likewise.
23060
	* grub-core/gnulib/regex_internal.h: Likewise.
23061
23062
2010-09-15  Szymon Janc <szymon@janc.net.pl>
23063
23064
	* grub-core/lib/xzembed/xz_dec_stream.c (dec_main): Fix index and block
23065
	CRC calculations and validity checks.
23066
	* grub-core/lib/xzembed/xz_dec_stream.c (dec_index): Fix index CRC
23067
	calculations.
23068
23069
2010-09-15  Szymon Janc <szymon@janc.net.pl>
23070
23071
	* grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_end): Fix memory leak.
23072
23073
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23074
23075
	Fix incorrect echo options handling.
23076
	Reported by: Yves Blusseau.
23077
23078
	* include/grub/command.h (grub_command_flags_t): New flags
23079
	GRUB_COMMAND_ACCEPT_DASH and GRUB_COMMAND_OPTIONS_AT_START.
23080
	* grub-core/lib/arg.c (grub_arg_parse): Handle new flags.
23081
	* grub-core/commands/echo.c (GRUB_MOD_INIT): Use new flags.
23082
23083
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23084
23085
	* include/grub/command.h (GRUB_COMMAND_FLAG_CMDLINE): Removed. All
23086
	users updated.
23087
	(GRUB_COMMAND_FLAG_MENU): Likewise.
23088
	(GRUB_COMMAND_FLAG_BOTH): Likewise.
23089
	(GRUB_COMMAND_FLAG_TITLE): Removed.
23090
	(GRUB_COMMAND_FLAG_NO_ECHO): Likewise.
23091
	(GRUB_COMMAND_FLAG_EXTCMD): Moved into enum.
23092
	(GRUB_COMMAND_FLAG_DYNCMD): Likewise.
23093
	(GRUB_COMMAND_FLAG_BLOCKS): Likewise.
23094
	(grub_command_flags_t): New enum. All users updated.
23095
23096
2010-09-14  Seth Goldberg <seth.goldberg@oracle.com>
23097
23098
	Fix solaris compilation.
23099
23100
	* grub-core/Makefile.core.def (kernel): Include gnulib/error.c on emu.
23101
	(grub-emu): Add LIBZFS and LIBNVPAIR to ldadd.
23102
	(grub-emu-list): Likewise.
23103
23104
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23105
23106
	Remove deprecated root command.
23107
23108
	* grub-core/commands/minicmd.c (grub_mini_cmd_root): Removed. All users
23109
	updated.
23110
23111
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23112
23113
	* util/i386/pc/grub-setup.c: Merge this ...
23114
	* util/sparc64/ieee1275/grub-setup.c:  ... and this ...
23115
	* util/grub-setup.c: ... into this.
23116
	* include/grub/sparc64/ieee1275/boot.h (grub_boot_blocklist) [ASM_FILE]:
23117
	New struct.
23118
23119
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23120
23121
	* grub-core/fs/ext2.c (grub_ext2_open): Use return error value when
23122
	possible.
23123
23124
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23125
23126
	* grub-core/partmap/sun.c (sun_partition_map_iterate): Don't needlesly
23127
	allocate p.
23128
23129
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23130
23131
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Add
23132
	explicit root argument to set to prevent UUID to be interpreted as
23133
	argument to set.
23134
23135
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23136
23137
	* grub-core/kern/sparc64/ieee1275/crt0.S: Align stack.
23138
23139
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23140
23141
	Don't export grub_gate_a20.
23142
23143
	* grub-core/kern/i386/pc/init.c: Remove leftovers.
23144
	* grub-core/kern/i386/pc/startup.S (FUNCTION(grub_gate_a20)): Rename
23145
	to ...
23146
	(grub_gate_a20): ... this. All users updated.
23147
	* include/grub/i386/pc/init.h: Removed. All users updated.
23148
23149
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23150
23151
	Create euro.pf2 which supports most European languages.
23152
23153
	* Makefile.am (grubdata_DATA): Add euro.pf2.
23154
	(euro.pf2): New target.
23155
	(CLEANFILES): Add euro.pf2.
23156
23157
2010-09-14  Vladimir Serbinenko  <phcoder@gmail.com>
23158
23159
	* configure.ac: Disable emu-usb by default to prevent inadvertent
23160
	device takeover.
23161
23162
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23163
23164
	Disable usbserial on grub-emu since our libusb code isn't good enough
23165
	yet.
23166
23167
	* grub-core/Makefile.core.def (usbserial_common): Disable on emu.
23168
	(usbserial_pl2303): Likewise.
23169
	(usbserial_ftdi): Likewise.
23170
23171
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23172
23173
	* include/grub/disk.h (grub_disk): Remove has_partitions.
23174
	All users updated.
23175
	* disk/loopback.c (grub_loopback): Remove has_partitions.
23176
	All users updated.
23177
	(options): Remove partitions. All users updated.
23178
	* util/grub-fstest.c (fstest): Don't pass "-p" to loopback.
23179
	* util/i386/pc/grub-setup.c (setup): copy partition table only when
23180
	actual partition table is found.
23181
23182
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23183
23184
	Remove readability checks (too many false negatives).
23185
23186
	* util/grub-install.in: Remove readability checks.
23187
	* util/grub-mkconfig.in: Likewise.
23188
	* util/grub.d/10_hurd.in: Likewise.
23189
	* util/grub.d/10_kfreebsd.in: Likewise.
23190
	* util/grub.d/10_linux.in: Likewise.
23191
	* util/grub-mkconfig_lib.in (is_path_readable_by_grub): Revert to old
23192
	way.
23193
23194
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23195
23196
	Enable acpi shutdown on all ACPI platforms.
23197
23198
	* grub-core/Makefile.core.def (halt): Inlude commands/acpihalt.c
23199
	on coreboo, multiboot and EFI.
23200
	* grub-core/commands/acpihalt.c (get_sleep_type): Add missing casts.
23201
	(grub_acpi_halt): Likewise.
23202
	* grub-core/commands/i386/pc/halt.c (grub_halt): Call grub_acpi_halt.
23203
	(grub_cmd_halt): Don't call grub_acpi_halt directly.
23204
	* grub-core/lib/efi/halt.c (grub_halt): Call grub_acpi_halt.
23205
	* grub-core/lib/i386/halt.c (grub_halt)
23206
	[GRUB_MACHINE_COREBOOT || GRUB_MACHINE_MULTIBOOT]: Likewise.
23207
23208
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23209
23210
	* grub-core/commands/iorw.c (grub_cmd_read): Declare buf in smallest
23211
	context.
23212
23213
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23214
23215
	* grub-core/video/efi_gop.c: Fix over-80-chars line.
23216
	* grub-core/video/efi_uga.c: Likewise.
23217
23218
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23219
23220
	Filter devaliases and never open same device twice.
23221
23222
	* grub-core/disk/ieee1275/ofdisk.c (last_devpath): New variable.
23223
	(last_ihandle): Likewise.
23224
	(ofdisk_hash_ent): New member shortest.
23225
	(ofdisk_hash_add): Add canonical path too.
23226
	(scan): New function.
23227
	(grub_ofdisk_iterate): Iterate over hashed entries.
23228
	(compute_dev_path): Don't add :0.
23229
	(grub_ofdisk_open): Don't really open the disk.
23230
	(grub_ofdisk_close): Avoid closing unrelated disk.
23231
	(grub_ofdisk_read): Implement reopen logic.
23232
	* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_canonicalise_devname):
23233
	New function.
23234
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_canonicalise_devname):
23235
	New proto.
23236
23237
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23238
23239
	Fix sparc64.
23240
23241
	* configure.ac (GRUB_KERNEL_MACHINE_LINK_ADDR): Removed.
23242
	* grub-core/Makefile.core.def (kernel): Make ldflags just use the
23243
	right address. Add sparc64_ieee1275_ldflags.
23244
	* grub-core/loader/sparc64/ieee1275/linux.c: Remove leftover include.
23245
	* util/grub-mkimagexx.c (locate_sections): Correct grub_host_to_target32
23246
	to grub_host_to_target_addr
23247
	(load_image): Likewise.
23248
23249
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23250
23251
	* grub-core/normal/completion.c (complete_file): Handle device
23252
	containing slash.
23253
	Fix based on patch by Doug Nazar.
23254
23255
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23256
23257
	grub-mknetdir script.
23258
23259
	* Makefile.util.def (grub-mknetdir): New module.
23260
	* tests/util/grub-shell.in: Support boot=net
23261
	* util/grub-mknetdir.in: New file.
23262
23263
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23264
23265
	videoinfo on non-vbe.
23266
23267
	* grub-core/Makefile.core.def (vbeinfo): Removed.
23268
	(vbetest): Removed.
23269
	(videoinfo): New module.
23270
	* grub-core/commands/i386/pc/vbeinfo.c: Removed.
23271
	* grub-core/commands/i386/pc/vbetest.c: Removed.
23272
	* grub-core/commands/videoinfo.c: New file.
23273
	* grub-core/commands/videotest.c (grub_cmd_videotest): Support mode
23274
	specification.
23275
	(grub_cmd_videotest) [GRUB_MACHINE_PCBIOS]: Load vbe.mod when invoked
23276
	as vbetest.
23277
	(GRUB_MOD_INIT) [GRUB_MACHINE_PCBIOS]: New command vbetest.
23278
	(GRUB_MOD_FINI) [GRUB_MACHINE_PCBIOS]: Unregister vbetest.
23279
	* grub-core/video/efi_gop.c (grub_video_gop_fill_mode_info): Fill
23280
	mode_number. New parameter mode. All users updated.
23281
	(grub_video_gop_iterate): New function.
23282
	(grub_video_efi_gop): New member iterate.
23283
	* grub-core/video/i386/pc/vbe.c (framebuffer): Removed leftover fields.
23284
	(grub_vbe_set_video_mode): Remove setting useless fields.
23285
	(vbe2videoinfo): New function.
23286
	(grub_video_vbe_iterate): Likewise.
23287
	(grub_video_vbe_setup): Use vbe2videoinfo.
23288
	(grub_video_vbe_print_adapter_specific_info): New function.
23289
	(grub_video_vbe_adapter): New fields iterate and
23290
	print_adapter_specific_info.
23291
	* include/grub/video.h (GRUB_VIDEO_MODE_*): Transform into enum.
23292
	All users updated.
23293
	(grub_video_mode_info): New field mode_number.
23294
	(grub_video_adapter): New fields iterate and
23295
	print_adapter_specific_info.
23296
23297
2010-09-13  Tristan Gingold  <gingold@free.fr>
23298
2010-09-13  Robert Millan  <rmh.grub@aybabtu.com>
23299
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23300
23301
	* grub-core/commands/efi/lsefisystab.c: New file.
23302
	* grub-core/commands/efi/lssal.c: Likewise.
23303
	* grub-core/Makefile.core.def (lsacpi): New module.
23304
	(lsefisystab): Likewise.
23305
	* include/grub/efi/api.h (GRUB_EFI_SAL_TABLE_GUID): New definition.
23306
	(GRUB_EFI_HCDP_TABLE_GUID): Likewise.
23307
	(grub_efi_sal_system_table): New struct.
23308
	(grub_efi_sal_system_table_entrypoint_descriptor): Likewise.
23309
	(grub_efi_sal_system_table_memory_descriptor): Likewise.
23310
	(grub_efi_sal_system_table_platform_features): Likewise.
23311
	(grub_efi_sal_system_table_translation_register_descriptor): Likewise.
23312
	(grub_efi_sal_system_table_purge_translation_coherence): Likewise.
23313
	(grub_efi_sal_system_table_ap_wakeup): Likewise.
23314
	* include/grub/types.h (PRIuGRUB_UINT64_T): New definition.
23315
23316
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23317
23318
	Support explicit user claim that a device is BIOS-visible.
23319
23320
	* grub-core/kern/emu/getroot.c (grub_util_get_dev_abstraction):
23321
	Return GRUB_DEV_ABSTRACTION_NONE if device is in device.map.
23322
	* grub-core/kern/emu/hostdisk.c
23323
	(convert_system_partition_to_system_disk): Support mdX.
23324
	(find_system_device): New parameter add. All users updated.
23325
	(grub_util_biosdisk_is_present): New function.
23326
	* include/grub/emu/hostdisk.h (grub_util_biosdisk_is_present): New
23327
	proto.
23328
23329
2010-09-13  Vladimir Serbinenko  <phcoder@gmail.com>
23330
23331
	Search hints support.
23332
23333
	* commands/search.c (FUNC_NAME): New arguments hints and nhints.
23334
	All users updated.
23335
23336
2010-09-13  Yves Blusseau  <blusseau@zetam.org>
23337
23338
	Bash completion script for util commands
23339
23340
	* Makefile.am:  Add util/bash-completion.d directory
23341
	* configure.ac: Likewise.
23342
	* util/bash-completion.d/Makefile.am: New file.
23343
	* util/bash-completion.d/grub-completion.bash.in: Likewise.
23344
23345
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
23346
23347
	* grub-core/normal/term.c (put_glyphs_terminal): Correct sign.
23348
	(print_backlog): set backlog_ucs4 and backlog_glyphs.
23349
	Reported by: Yves Blusseau.
23350
23351
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
23352
23353
	* grub-core/normal/misc.c (grub_normal_print_device_info): Show
23354
	partition size and offset.
23355
23356
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
23357
23358
	* grub-core/commands/wildcard.c (make_regex): Escape brackets.
23359
23360
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
23361
23362
	* grub-core/commands/ls.c (grub_cmd_ls): Accept multiple files.
23363
23364
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
23365
23366
	* grub-core/kern/misc.c (grub_vprintf): Use va_copy when necessary.
23367
	(grub_xvasprintf): Likewise.
23368
23369
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
23370
23371
	* grub-core/kern/emu/main.c (main): Call hostfs_init only after init_all.
23372
23373
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
23374
23375
	* grub-core/commands/menuentry.c (append_menu_entry): Don't rely on
23376
	args ending with NULL.
23377
23378
2010-09-12  Vladimir Serbinenko  <phcoder@gmail.com>
23379
23380
	* grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_reset): Preserve context
23381
	pointer.
23382
23383
2010-09-11  Szymon Janc <szymon@janc.net.pl>
23384
23385
	* grub-core/commands/lsacpi.c (grub_cmd_lsacpi): Fix prototype.
23386
23387
2010-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
23388
23389
	Shutdown using ACPI.
23390
23391
	* grub-core/Makefile.core.def (halt): Add commands/acpihalt.c on i386-pc.
23392
	* grub-core/commands/acpihalt.c: New file.
23393
	* grub-core/commands/i386/pc/halt.c (grub_cmd_halt): Call grub_acpi_halt.
23394
	* include/grub/acpi.h (grub_acpi_fadt): New member pm1a.
23395
	(grub_acpi_halt): New proto.
23396
	(GRUB_ACPI_SLP_EN): New const.
23397
	(GRUB_ACPI_SLP_TYP_OFFSET): Likewise.
23398
	(GRUB_ACPI_OPCODE_*): New enum.
23399
	(GRUB_ACPI_EXTOPCODE_*): Likewise.
23400
23401
2010-09-11  Tristan Gingold  <gingold@free.fr>
23402
2010-09-11  Robert Millan  <rmh.grub@aybabtu.com>
23403
2010-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
23404
23405
	* commands/lsacpi.c: New file.
23406
	* grub-core/Makefile.core.def (lsacpi): New module.
23407
	* include/grub/acpi.h (GRUB_ACPI_FADT_SIGNATURE): New definition.
23408
	(GRUB_ACPI_MADT_SIGNATURE): Likewise.
23409
	(grub_acpi_madt_entry_header): New struct.
23410
	(grub_acpi_madt): Likewise.
23411
	(grub_acpi_madt_entry_interrupt_override): Likewise.
23412
	(grub_acpi_madt_entry_sapic): Likewise.
23413
	(grub_acpi_madt_entry_lsapic): Likewise.
23414
	(grub_acpi_madt_entry_platform_int_source): Likewise.
23415
	* include/grub/types.h (PRIxGRUB_UINT32_T): New definition.
23416
	(PRIuGRUB_UINT32_T): Likewise.
23417
	(PRIxGRUB_UINT64_T): Likewise.
23418
23419
2010-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
23420
23421
	Implement loading palette on ieee1275_fb.
23422
23423
	* grub-core/video/ieee1275.c (stdout_ihandle): New variable.
23424
	(have_setcolors): Likewise.
23425
	(grub_video_ieee1275_init): Fill stdout_ihandle and have_setcolors.
23426
	(grub_video_ieee1275_setup): Use grub_video_ieee1275_set_palette.
23427
	(grub_video_ieee1275_set_palette): Implement.
23428
23429
2010-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
23430
2010-09-11  Colin Watson  <cjwatson@ubuntu.com>
23431
23432
	* util/grub-install.in (grub_partition): New variable.
23433
	Set prefix_drive on EFI and PC to (,$grub_partition) as last resort.
23434
	* util/i386/pc/grub-setup.c (setup): Don't touch prefix.
23435
	Fixes a bug reported by Yves Blusseau.
23436
23437
2010-09-11  Vladimir Serbinenko  <phcoder@gmail.com>
23438
23439
	Fix emu on mipsel.
23440
23441
	* conf/Makefile.common (CFLAGS_PLATFORM): Add -mflush-func
23442
	=grub_cpu_flush_cache on all mips and not only yeeloong.
23443
	* configure.ac (COND_mips): New conditional.
23444
	* grub-core/Makefile.am (KERNEL_HEADER_FILES): Add libgcc on all
23445
	platforms.
23446
	* grub-core/kern/emu/cache.S (__mips__): Use _flush_cache.
23447
	* grub-core/kern/emu/full.c (grub_arch_dl_init_linker)
23448
	[GRUB_LINKER_HAVE_INIT]: New function.
23449
	(grub_emu_post_init): Likewise.
23450
	* grub-core/kern/emu/lite.c (grub_emu_post_init): Likewise.
23451
	* grub-core/kern/emu/main.c: Use grub_emu_post_init.
23452
	* include/grub/cache.h (_mips): Include mips/cache.h.
23453
	* include/grub/disk.h [GRUB_UTIL || GRUB_MACHINE_EMU]: Add missing
23454
	LVM and RAID prototypes.
23455
	* include/grub/emu/misc.h (grub_emu_post_init): New proto.
23456
	* include/grub/mips/time.h (grub_cpu_idle) [GRUB_MACHINE_EMU]: New
23457
	function.
23458
23459
2010-09-10  Colin Watson  <cjwatson@ubuntu.com>
23460
23461
	* util/grub-install.in: Don't try to verify core.img until after
23462
	running grub-mkimage to create it.
23463
23464
2010-09-10  Robert Millan  <rmh@gnu.org>
23465
23466
	* util/grub.d/10_hurd.in: Add misc readability checks.
23467
	* util/grub.d/10_kfreebsd.in: Likewise.
23468
	* util/grub.d/10_linux.in: Likewise.
23469
23470
2010-09-10  Colin Watson  <cjwatson@ubuntu.com>
23471
23472
	* util/grub-install.in: ${imgext} won't be defined here until the
23473
	install branch is merged.  For the meantime, only verify core.img on
23474
	i386-pc and sparc64-ieee1275 platforms.
23475
23476
2010-09-10  Robert Millan  <rmh@gnu.org>
23477
23478
	Solaris support in grub_find_zpool_from_dir().  Thanks
23479
	Seth Goldberg for referring to getextmntent() facility.
23480
23481
	* configure.ac: Check for getextmntent(), `sys/mnttab.h' and
23482
	`sys/mkdev.h'.
23483
	* grub-core/kern/emu/misc.c [HAVE_SYS_MNTTAB_H]: Include
23484
	`<sys/mnttab.h>'.
23485
	[HAVE_SYS_MKDEV_H]: Include `<sys/mkdev.h>'.
23486
	[HAVE_GETEXTMNTENT] (grub_find_zpool_from_dir): Add getextmntent()
23487
	method for finding zpool name.
23488
23489
2010-09-10  Colin Watson  <cjwatson@ubuntu.com>
23490
23491
	grub-fstest needs the host and hostfs modules while other utilities
23492
	actively require those modules to be absent, so grub-fstest needs
23493
	its own initialisation and finalisation code.
23494
23495
	* Makefile.am (grub_fstest.pp): New target.
23496
	(grub_fstest_init.lst): Likewise.
23497
	(grub_fstest_init.c): Likewise.
23498
	* Makefile.util.def (grub-fstest): Add grub_fstest_init.c.
23499
23500
2010-09-10  Robert Millan  <rmh@gnu.org>
23501
23502
	* configure.ac: Check for `struct statfs.f_fstypename' and
23503
	`struct statfs.f_mntfromname'.
23504
23505
	* grub-core/kern/emu/misc.c (grub_find_zpool_from_dir): Conditionalize
23506
	kFreeBSD-specific code.
23507
23508
2010-09-10  Robert Millan  <rmh@gnu.org>
23509
23510
	* util/grub.d/10_kfreebsd.in: Fix ${kfreebsd_device} initialization
23511
	on ZFS.  Now non-main filesystems are supported as / too.
23512
23513
2010-09-09  Colin Watson  <cjwatson@ubuntu.com>
23514
23515
	* Makefile.util.def (libgrub.a): Move grub-core/kern/emu/hostfs.c
23516
	and grub-core/disk/host.c to ...
23517
	(grub-fstest): ... here.  Having the host disk implementation
23518
	present confuses grub-probe and other utility programs.
23519
23520
	* util/grub-mkconfig.in: Only verify readability of grub.cfg.new
23521
	when writing to a file, not when writing to stdout.
23522
23523
2010-09-09  BVK Chaitanya  <bvk.groups@gmail.com>
23524
23525
	* tests/partmap_test.in: New test for partitions.
23526
	* Makefile.util.def: Rules for new test.
23527
23528
2010-09-09  Robert Millan  <rmh@gnu.org>
23529
23530
	* util/grub-probe.c (probe): Fix a pair of unhandled error
23531
	conditions.
23532
23533
2010-09-09  Robert Millan  <rmh@gnu.org>
23534
23535
	Basic Btrfs support (detection and UUID).
23536
23537
	* grub-core/fs/btrfs.c: New file.
23538
	* Makefile.util.def (library): Register btrfs.c.
23539
	* grub-core/Makefile.core.def: Likewise.
23540
23541
2010-09-08  Robert Millan  <rmh@gnu.org>
23542
23543
	* util/grub-mkconfig_lib.in (is_path_readable_by_grub): Improve
23544
	with (optional) parameters to specify device and relative path.
23545
	* util/grub-install.in: Use is_path_readable_by_grub() to
23546
	verify readability of a few critical files.
23547
	* util/grub-mkconfig.in: Use is_path_readable_by_grub() to
23548
	verify readability of grub.cfg.new.
23549
23550
2010-09-08  Vladimir Serbinenko  <phcoder@gmail.com>
23551
23552
	Split minix.mod into minix.mod and minix2.mod.
23553
23554
	* Makefile.util.def (libgrub.a): Add grub-core/fs/minix2.c.
23555
	* grub-core/Makefile.core.def (minix2): New module.
23556
	* grub-core/fs/minix.c: Use definitions instead of runtime version
23557
	checking.
23558
	* grub-core/fs/minix2.c: New file.
23559
23560
2010-09-08  Yves Blusseau  <blusseau@zetam.org>
23561
23562
	Add new --boot-directory option to replace --root-directory
23563
23564
	* util/grub-install.in: Add new --boot-directory option
23565
	* util/grub-reboot.in: Likewise.
23566
	* util/grub-set-default.in: Likewise.
23567
23568
2010-09-08  Yves Blusseau  <blusseau@zetam.org>
23569
23570
        * util/grub-mkconfig.in: Use new variable.
23571
23572
2010-09-08  Yves Blusseau  <blusseau@zetam.org>
23573
23574
	* configure.ac: Define some useful variables.
23575
23576
2010-09-08  Vladimir Serbinenko  <phcoder@gmail.com>
23577
23578
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
23579
	GRUB_IEEE1275_FLAG_HAS_CURSORONOFF when appropriate.
23580
	* grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_setcursor):
23581
	Use terminfo and don't use cursor-on/cursor-off unless it's known
23582
	to work.
23583
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New element
23584
	GRUB_IEEE1275_FLAG_HAS_CURSORONOFF.
23585
23586
2010-09-08  Colin Watson  <cjwatson@ubuntu.com>
23587
23588
	* grub-core/kern/efi/init.c (grub_efi_set_prefix): If the prefix
23589
	starts with "(,", fill the drive containing the loaded image in
23590
	between those two characters, but expect that a full partition
23591
	specification including partition map names will follow.
23592
23593
2010-09-08  Robert Millan  <rmh@gnu.org>
23594
23595
	* configure.ac: Remove `--enable-grub-fstest' option.
23596
	* Makefile.util.def (grub-fstest): Remove COND_GRUB_FSTEST condition.
23597
23598
	* util/grub-mkconfig_lib.in (is_path_readable_by_grub): Use
23599
	`grub-fstest' instead of `grub-probe' for readability verification.
23600
	* util/grub-probe.c (probe): Remove readability verification kludge.
23601
23602
2010-09-08  Robert Millan  <rmh@gnu.org>
23603
23604
	* util/grub-mkconfig.in: Pass `--device ${GRUB_DEVICE}' when
23605
	initializing `GRUB_FS'.
23606
23607
2010-09-08  BVK Chaitanya  <bvk.groups@gmail.com>
23608
23609
	Not command (!) support to GRUB script.
23610
23611
	* tests/grub_script_not.in: New test.
23612
	* Makefile.util.def: Rules for new test.
23613
23614
	* grub-core/script/execute.c (grub_script_execute_cmdline): Handle
23615
	! command as a special case.
23616
	* grub-core/script/yylex.l (GRUB_PARSER_TOKEN_NOT): Removed.
23617
23618
2010-09-07  BVK Chaitanya  <bvk.groups@gmail.com>
23619
23620
	* grub-core/commands/wildcard.c (wildcard_expand): Fix wrong
23621
	grub_free.
23622
23623
2010-09-07  BVK Chaitanya  <bvk.groups@gmail.com>
23624
23625
	* docs/grub.texi (Shell-like scripting): Fix @dots to @dots{}.
23626
23627
2010-09-07  BVK Chaitanya  <bvk.groups@gmail.com>
23628
23629
	* docs/grub.texi (Shell-like scripting): Documentation for break,
23630
	continue, shift and return commands.
23631
23632
2010-09-06  Vladimir Serbinenko  <phcoder@gmail.com>
23633
23634
	Rename CD-ROM to cd on BIOS.
23635
23636
	* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_get_drive): Recognise
23637
	"cd".
23638
	(grub_biosdisk_call_hook): Call with "cd" instead of arbitrary hdX.
23639
23640
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
23641
23642
	* grub-core/kern/emu/main.c (main): Reinit LVM and RAID.
23643
	* util/grub-probe.c (main): Likewise.
23644
	* util/i386/pc/grub-setup.c (main): Likewise.
23645
	* util/sparc64/ieee1275/grub-setup.c (main): Likewise.
23646
	Reported and debugged by: alexxy
23647
23648
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
23649
23650
	* grub-core/disk/lvm.c (grub_lvm_scan_device) [GRUB_UTIL]: Output more
23651
	diagnostic info.
23652
23653
2010-09-05  Jo Shields <directhex@apebox.org>
23654
23655
	* util/grub.d/30_os-prober.in: Add missing classes.
23656
23657
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
23658
23659
	* docs/grub.texi (Theme file format): Document new position format.
23660
23661
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
23662
23663
	* docs/grub.texi (Theme file format): Replace Box_slice_names.png with
23664
	a table. Use @code instead of @verbatim.
23665
23666
2010-09-05  Colin D Bennett  <colin@gibibit.com>
23667
23668
	Gfxmenu documentation.
23669
23670
	* docs/grub.texi (Theme file format): New chapter.
23671
23672
2010-09-05  Szymon Janc <szymon@janc.net.pl>
23673
23674
	* grub-core/Makefile.core.def (xzio): New module.
23675
	* grub-core/io/xzio.c: New file.
23676
	* grub-core/lib/xzembed/xz.h: New file (from xembed).
23677
	* grub-core/lib/xzembed/xz_config.h: Likewise.
23678
	* grub-core/lib/xzembed/xz_dec_bcj.c: Likewise.
23679
	* grub-core/lib/xzembed/xz_dec_lzma2.c: Likewise.
23680
	* grub-core/lib/xzembed/xz_dec_stream.c: Likewise.
23681
	* grub-core/lib/xzembed/xz_lzma2.h: Likewise.
23682
	* grub-core/lib/xzembed/xz_private.h: Likewise.
23683
	* grub-core/lib/xzembed/xz_stream.h: Likewise.
23684
	* include/grub/file.h (grub_file_filter_id): New compression filter
23685
	GRUB_FILE_FILTER_XZIO.
23686
23687
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
23688
23689
	* include/grub/file.h (GRUB_FILE_SIZE_UNKNOWN): New definition.
23690
	* grub-core/disk/loopback.c (grub_loopback_open): Handle unknown file
23691
	size.
23692
23693
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
23694
23695
	* include/grub/err.h (grub_err_t): Replace GRUB_ERR_BAD_GZIP_DATA with
23696
	GRUB_ERR_BAD_COMPRESSED_DATA. All users updated.
23697
23698
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
23699
23700
	Uncompressed checksum support.
23701
23702
	* grub-core/commands/hashsum.c (options): Add option --uncompress.
23703
	(check_list): New parameter uncompress.
23704
	(grub_cmd_hashsum): Handle --uncompress.
23705
23706
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
23707
23708
	Reintroduce testload.
23709
23710
	* grub-core/commands/minicmd.c (grub_rescue_cmd_testload) [0]: Moved
23711
	from here ...
23712
	* grub-core/commands/testload.c (grub_cmd_testload): ... here.
23713
	(GRUB_MOD_INIT): New function.
23714
	(GRUB_MOD_FINI): Likewise.
23715
	* grub-core/Makefile.core.def (testload): New module.
23716
23717
2010-09-05  Szymon Janc <szymon@janc.net.pl>
23718
23719
	* grub-core/lib/posix_wrap/sys/types.h (bool): Transform into an enum.
23720
	(uint8_t): New type.
23721
	(uint16_t): Likewise.
23722
	(uint32_t): Likewise.
23723
	(uint64_t): Likewise.
23724
23725
2010-09-05  Szymon Janc <szymon@janc.net.pl>
23726
23727
	* include/grub/crypto.h (GRUB_MD_CRC32): New definition.
23728
23729
2010-09-05  Vladimir Serbinenko  <phcoder@gmail.com>
23730
23731
	* grub-core/io/gzio.c (grub_gzio_open): Removed "transparent" parameter.
23732
	Made static.
23733
	(grub_gzfile_open): Removed. All users updated.
23734
	(GRUB_MOD_INIT): New function.
23735
	(GRUB_MOD_FINI): Likewise.
23736
	* grub-core/kern/file.c (grub_file_filters_all): New variable.
23737
	(grub_file_filters_enabled): Likewise.
23738
	(grub_file_open): Handle filters.
23739
	* grub-core/loader/i386/bsd.c (GRUB_MOD_INIT): Load gzio.
23740
	* grub-core/normal/main.c (GRUB_MOD_INIT): Likewise.
23741
	* include/grub/file.h (grub_file_filter_id_t): New type.
23742
	(grub_file_filter_t): Likewise.
23743
	(grub_file_filters_all): New extern variable.
23744
	(grub_file_filters_enabled): Likewise.
23745
	(grub_file_filter_register): New inline function.
23746
	(grub_file_filter_unregister): Likewise.
23747
	(grub_file_filter_disable): Likewise.
23748
	(grub_file_filter_disable_compression): Likewise.
23749
	* include/grub/gzio.h: Removed.
23750
23751
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
23752
23753
	Filename expansion support for wildcards in GRUB script.
23754
23755
	* tests/grub_script_expansion.in: New test.
23756
	* Makefile.util.def: Rule for new test.
23757
23758
	* grub-core/commands/wildcard.c: New file, implements filename
23759
	expansion support for GRUB script.
23760
	* grub-core/Makefile.core.def: Rule update for regexp.mod.
23761
	* grub-core/script/argv.c: Cosmetic changes.
23762
	* grub-core/script/execute.c (grub_script_arglist_to_argv):
23763
	Refactored to perform wildcard expansion on arguments.
23764
	* include/grub/script_sh.h (grub_script_wildcard_translator): New
23765
	struct.
23766
23767
	* tests/util/grub-shell.in: Fix quoting for read input.
23768
23769
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
23770
23771
	Support for updating environment variables with matched substrings
23772
	of regexp.
23773
23774
	* tests/grub_cmd_regexp.in: New test.
23775
	* Makefile.util.def: Rule for new test.
23776
23777
	* grub-core/commands/regexp.c: New option -s to update environment
23778
	variables with regexp matches.
23779
23780
2010-09-04  Szymon Janc <szymon@janc.net.pl>
23781
23782
	* include/grub/file.h (grub_file): New member not_easly_seekable.
23783
	(grub_file_seekable): New inline function.
23784
	* grub-core/io/gzio.c (test_header): Don't test end magic if file isn't
23785
	easily seekable.
23786
	(grub_gzio_open): Set not_easly_seekable.
23787
	* grub-core/fs/i386/pc/pxe.c (grub_pxefs_open): Set not_easily_seekable.
23788
	* grub-core/io/bufio.c (grub_bufio_open): Propagate not_easily_seekable.
23789
23790
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
23791
23792
	Support for options to appear multiple times on cmdline.
23793
23794
	* include/grub/lib/arg.h (grub_arg_list_alloc): New prototype.
23795
	* grub-core/commands/extcmd.c: Support for repeatable option.
23796
	* grub-core/lib/arg.c (grub_arg_list_alloc): New function for
23797
	repeatable option support.
23798
23799
	Refactor menuentry into a regular command.
23800
23801
	* grub-core/commands/menuentry.c: New file, menuentry command
23802
	implementation.
23803
	* grub-core/Makefile.core.def: Rule update for normal.mod.
23804
	* grub-core/normal/main.c: Moved menuentry creation to
23805
	grub-core/commands/menuentry.c.
23806
	* grub-core/normal/menu.c (grub_menu_execute_entry): Removed.
23807
	(grub_menu_execute_entry_real): Removed.
23808
	* grub-core/script/execute.c (grub_script_execute_sourcecode): New
23809
	function.
23810
	(grub_script_execute_menuentry): Removed.
23811
	* grub-core/script/parser.y (menuentry): Removed.
23812
	* grub-core/script/script.c (grub_script_create_cmdmenu): Removed.
23813
	* grub-core/script/yylex.l (menuentry): Removed.
23814
	* include/grub/menu.h (grub_menu_init): New prototype.
23815
	(grub_menu_fini): New prototype.
23816
	* include/grub/normal.h (grub_normal_add_menu_entry): Removed.
23817
	* include/grub/script_sh.h (grub_script_cmd_menuentry): Removed.
23818
	(grub_script_execute_sourcecode): New prototype.
23819
23820
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
23821
23822
	"return" command for GRUB script functions.
23823
23824
	* tests/grub_script_return.in: New test.
23825
	* Makefile.util.def: Rules for new test.
23826
23827
	* grub-core/script/execute.c (grub_script_return): New function.
23828
	* grub-core/script/main.c: Register/unregister return commaond.
23829
	* include/grub/script_sh.h (grub_script_return): New prototype.
23830
23831
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
23832
23833
	"setparams" command to update positional parameters.
23834
23835
	* tests/grub_script_setparams.in: New test.
23836
	* Makefile.util.def: Rules for new test.
23837
23838
	* grub-core/script/argv.c (grub_script_argv_make): New function.
23839
	* grub-core/script/execute.c (replace_scope): New function.
23840
	(grub_script_setparams): New function.
23841
	* grub-core/script/lexer.c: Remove unused variables.
23842
	* grub-core/script/main.c: Register/unregister setparams command.
23843
	* include/grub/script_sh.h (grub_script_argv_make): New prototype.
23844
	(grub_script_setparams): New prototype.
23845
23846
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
23847
23848
	* grub-core/normal/completion.c (grub_normal_do_completion): Fix
23849
	grub_free order.
23850
23851
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
23852
23853
	Support for passing block of commands as an argument to extcmds.
23854
23855
	* Makefile.util.def: Rules for new test.
23856
	* tests/grub_script_blockarg.in: New test.
23857
	* grub-core/tests/test_blockarg.c: New file, block argument
23858
	command used in the test.
23859
23860
	* include/grub/extcmd.h (grub_extcmd_context): New struct.
23861
	(grub_register_extcmd_prio): New function prototype.
23862
	(grub_extcmd_dispatcher): New function prototype.
23863
	* include/grub/command.h (GRUB_COMMAND_FLAG_BLOCKS): New command
23864
	type.
23865
	* include/grub/script_sh.h (struct grub_script): New members
23866
	`children', `next_siblings' and `refcnt' for block arguments and
23867
	reference counting.
23868
	(GRUB_SCRIPT_ARG_TYPE_BLOCK): New argument type.
23869
	(grub_script_arg): New member `script' for block argument.
23870
	(grub_script_argv): New member `script' for block argument.
23871
	(grub_parser_param): New member `scripts' for block argument.
23872
	(grub_script_mem_free): New extern function prototype.
23873
	(grub_script_ref): New function prototype.
23874
	(grub_script_unref): New function prototype.
23875
23876
	* grub-core/normal/dyncmd.c (grub_dyncmd_dispatcher): Moved to
23877
	extcmd form to support block arguments.
23878
	* grub-core/script/argv.c: Block arguments support.
23879
	* grub-core/script/execute.c: Likewise.
23880
	* grub-core/script/lexer.c: Likewise.
23881
	* grub-core/script/main.c: Likewise.
23882
	* grub-core/script/script.c: Likewise.
23883
	* grub-core/script/parser.y: Likewise.  New `block' and `block0'
23884
	non-terminals.
23885
23886
	* grub-core/commands/acpi.c: Update extcmd implementations with
23887
	grub_extcmd_context_t.
23888
	* grub-core/commands/cat.c: Likewise.
23889
	* grub-core/commands/echo.c: Likewise.
23890
	* grub-core/commands/extcmd.c: Likewise.
23891
	* grub-core/commands/hashsum.c: Likewise.
23892
	* grub-core/commands/hdparm.c: Likewise.
23893
	* grub-core/commands/help.c: Likewise.
23894
	* grub-core/commands/hexdump.c: Likewise.
23895
	* grub-core/commands/i386/cpuid.c: Likewise.
23896
	* grub-core/commands/i386/pc/drivemap.c: Likewise.
23897
	* grub-core/commands/i386/pc/halt.c: Likewise.
23898
	* grub-core/commands/i386/pc/sendkey.c: Likewise.
23899
	* grub-core/commands/iorw.c: Likewise.
23900
	* grub-core/commands/keystatus.c: Likewise.
23901
	* grub-core/commands/loadenv.c: Likewise.
23902
	* grub-core/commands/ls.c: Likewise.
23903
	* grub-core/commands/lspci.c: Likewise.
23904
	* grub-core/commands/memrw.c: Likewise.
23905
	* grub-core/commands/probe.c: Likewise.
23906
	* grub-core/commands/search_wrap.c: Likewise.
23907
	* grub-core/commands/setpci.c: Likewise.
23908
	* grub-core/commands/sleep.c: Likewise.
23909
	* grub-core/disk/loopback.c: Likewise.
23910
	* grub-core/hello/hello.c: Likewise.
23911
	* grub-core/loader/i386/bsd.c: Likewise.
23912
	* grub-core/loader/xnu.c: Likewise.
23913
	* grub-core/term/gfxterm.c: Likewise.
23914
	* grub-core/term/serial.c: Likewise.
23915
	* grub-core/tests/lib/functional_test.c: Likewise.
23916
23917
2010-09-04  BVK Chaitanya  <bvk.groups@gmail.com>
23918
23919
	Multi-line quoted strings support.
23920
23921
	* grub-core/script/lexer.c (append_newline): Removed.
23922
	(grub_script_lexer_yywrap): Refactored.
23923
	(grub_script_lexer_init): Refactored.
23924
	* grub-core/script/yylex.l (yywrap): New function.
23925
	(grub_lexer_resplit): New function.
23926
	(grub_lexer_unput): New function.
23927
	* include/grub/script_sh.h (grub_lexer_param): New members, unput
23928
	and resplit.
23929
	* tests/grub_script_echo1.in: Added few more testcases.
23930
23931
2010-09-04  Vladimir Serbinenko  <phcoder@gmail.com>
23932
23933
	* grub-core/kern/misc.c: Don't add abort alias in utils.
23934
	Reported by: echoline.
23935
23936
2010-09-03  BVK Chaitanya  <bvk.groups@gmail.com>
23937
23938
	Add missing files into "make dist" tarball for other platforms.
23939
23940
	* gentpl.py (script): Use dist_noinst_DATA instead of EXTRA_DIST.
23941
	* conf/Makefile.common (dist_noinst_DATA): New variable.
23942
	* conf/Makefile.extra-dist: Added missing make dist files.
23943
	* grub-core/Makefile.core.def: Likewise.
23944
23945
2010-09-03  Vladimir Serbinenko  <phcoder@gmail.com>
23946
23947
	Compress grub_prefix.
23948
23949
	* grub-core/boot/i386/pc/lnxboot.S: Use
23950
	GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE.
23951
	* grub-core/kern/i386/pc/startup.S: Move grub_prefix to compressed part.
23952
	* include/grub/offsets.h: Rename GRUB_MACHINE_DATA_END to
23953
	GRUB_MACHINE_PREFIX_END. All users updated.
23954
	(GRUB_KERNEL_I386_PC_PREFIX): Set to GRUB_KERNEL_I386_PC_RAW_SIZE.
23955
	(GRUB_KERNEL_I386_PC_PREFIX_END): Set to GRUB_KERNEL_I386_PC_PREFIX
23956
	+ 0x40.
23957
	(GRUB_KERNEL_I386_PC_RAW_SIZE): Decrease.
23958
	* util/grub-mkimage.c (image_target_desc): Change data_end to
23959
	prefix_end. All users updated.
23960
23961
2010-09-03  Vladimir Serbinenko  <phcoder@gmail.com>
23962
23963
	* grub-core/loader/i386/bsd.c (grub_freebsd_boot): Set %ebp to sane
23964
	value.
23965
	(grub_openbsd_boot): Likewise.
23966
	(grub_netbsd_boot): Likewise.
23967
	* grub-core/loader/i386/xnu.c (grub_xnu_boot_resume): Likewise.
23968
	(grub_xnu_boot): Likewise.
23969
23970
2010-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
23971
23972
	* configure.ac: Clean LIBS variable after tests.
23973
23974
2010-09-02  Colin Watson  <cjwatson@ubuntu.com>
23975
23976
	* INSTALL: Document that libdevmapper needs to be 1.02.34 or later.
23977
23978
2010-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
23979
23980
	* configure.ac: Check for dm_log_with_errno_init in libdevmapper and
23981
	echo if libdevmapper will be used.
23982
23983
2010-09-02  Ian Turner  <Ian.Turner@deshaw.com>
23984
23985
	* grub-core/fs/i386/pc/pxe.c (grub_pxefs_read): Keep the blocksize
23986
	constant for the same file.
23987
23988
2010-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
23989
23990
	* grub-core/kern/i386/multiboot_mmap.c: Remove leftover include.
23991
23992
2010-09-02  Colin Watson  <cjwatson@ubuntu.com>
23993
23994
	* .bzrignore: Add *.pp, **/.dirstamp, grub-core/*.module, and
23995
	grub-core/*.pp.
23996
23997
2010-09-02  Colin Watson  <cjwatson@ubuntu.com>
23998
23999
	Zero %ebp and %edi when entering Linux's 32-bit entry point, as
24000
	required by the boot protocol.
24001
24002
	* include/grub/i386/relocator.h (struct grub_relocator32_state): Add
24003
	ebp and edi members.
24004
	* grub-core/lib/i386/relocator.c (grub_relocator_boot): Handle
24005
	state.ebp and state.edi.
24006
	* grub-core/lib/i386/relocator32.S (grub_relocator32_start): Set
24007
	%ebp and %edi according to grub_relocator32_ebp and
24008
	grub_relocator32_edi respectively.
24009
	* grub-core/loader/i386/linux.c (grub_linux_boot): Zero state.ebp
24010
	and state.edi.
24011
24012
2010-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
24013
24014
	Add i386-pc-pxe image target.
24015
24016
	* util/grub-mkimage.c (image_target_desc): New enum value
24017
	IMAGE_I386_PC_PXE.
24018
	(image_targets): New target i386-pc-pxe.
24019
	(generate_image): Handle i386-pc-pxe image.
24020
24021
2010-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
24022
24023
	Fix grub_pxe_scan.
24024
24025
	* grub-core/fs/i386/pc/pxe.c (grub_pxe_pxenv): Put correct type bangpxe.
24026
	(grub_pxe_scan): Fix types and pxe_rm_entry computation.
24027
	All users updated.
24028
	* include/grub/i386/pc/pxe.h (grub_pxe_bangpxe): New struct.
24029
	(grub_pxe_pxenv): Correct type.
24030
24031
2010-09-01  Colin Watson  <cjwatson@ubuntu.com>
24032
24033
	* NEWS: Document most of the important changes since 1.98.
24034
24035
2010-09-01  Colin Watson  <cjwatson@ubuntu.com>
24036
24037
	* util/grub-mkrescue.in (usage): Tidy up usage output (and hence
24038
	generated manual page) a little.
24039
24040
2010-09-01  Colin Watson  <cjwatson@ubuntu.com>
24041
24042
	* docs/grub.texi: Add myself as an author.
24043
24044
2010-09-01  Vladimir Serbinenko  <phcoder@gmail.com>
24045
24046
	* Makefile.util.def (libgrub.a): Add missing sunpc.
24047
	Reported by: Seth Goldberg.
24048
24049
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
24050
24051
	Interrupt wrapping and code simplifications.
24052
24053
	* Makefile.util.def (grub-mkrescue): Use x86 tg instead of
24054
	x86_noieee1275 which are functionaly equivalent in this case.
24055
	(grub-install): Make source on each platform explicit. Enable on
24056
	all noemu.
24057
	* gentpl.py (x86_efi_pc): Removed group.
24058
	(x86_noefi): Likewise.
24059
	(i386_noefi): Likewise.
24060
	(x86_noieee1275): Likewise.
24061
	(i386_noieee1275): Likewise.
24062
	(i386_noefi_noieee1275): Likewise.
24063
	(i386_pc_qemu_coreboot): Likewise.
24064
	(i386_coreboot_multiboot): Likewise.
24065
	(i386_pc_coreboot_multiboot_qemu): Likewise.
24066
	(x86_noefi_mips): Likewise.
24067
	(noieee1275): Likewise.
24068
	(ieee1275_mips): Likewise.
24069
	(noemu_noieee1275): Likewise.
24070
	(cmos): New group.
24071
	(usb): Likewise.
24072
	(videoinkernel): Likewise.
24073
	(videomodules): Likewise.
24074
	* grub-core/Makefile.am (KERNEL_HEADER_FILES): Remove
24075
	include/grub/elf.h, include/grub/elfload.h, include/grub/net.h,
24076
	include/grub/reader.h, include/grub/symbol.h, include/grub/types.h,
24077
	include/grub/loader.h, include/grub/msdos_partition.h,
24078
	include/grub/machine/biosdisk.h, include/grub/machine/boot.h,
24079
	include/grub/machine/console.h, include/grub/machine/vga.h,
24080
	include/grub/machine/vbe.h, include/grub/machine/init.h,
24081
	include/grub/machine/kernel.h, include/grub/cpu/time.h,
24082
	include/grub/cpu/types.h, include/grub/gzio.h and include/grub/menu.h
24083
	(KERNEL_HEADER_FILES) [i386-pc]: Add include/grub/machine/int.h.
24084
	(KERNEL_HEADER_FILES) [i386-ieee1275]: Add include/grub/i386/pit.h
24085
	* grub-core/Makefile.core.def (kernel): Explicit the source for
24086
	startup. Explicit the platforms using kern/generic/rtc_get_time_ms.c.
24087
	Split ieee1275_mips. Remove kern/i386/halt.c. Remove kern/i386/misc.S.
24088
	Enable kern/i386/pit.c on all x86. Remove kern/i386/ieee1275/init.c.
24089
	Use videoinkernel tag.
24090
	(usb): Enable on all usb.
24091
	(usbserial_common): Likewise.
24092
	(usbserial_pl2303): Likewise.
24093
	(usbserial_ftdi): Likewise.
24094
	(uhci): Enable on all x86.
24095
	(ohci): Enable on all pci.
24096
	(cmostest): Enable on all CMOS.
24097
	(acpi): Include commands/acpi.c on all platforms.
24098
	(halt): Add relevant lib/*/halt.c.
24099
	(hdparm): Enable on all pci.
24100
	(lspci): Likewise.
24101
	(usbtest): Enable on all usb.
24102
	(ata): Enable on all pci.
24103
	(ata_pthru): Likewise.
24104
	(usbms): Enable on all usb.
24105
	(usb_keyboard): Likewise.
24106
	(font): Use tag videomodules.
24107
	(bufio): Likewise.
24108
	(datetime): Use tag cmos. Enable on all noemu.
24109
	(mmap): Use tags common and x86.
24110
	(gfxterm): Use tag videomodules.
24111
	(bitmap): Likewise.
24112
	(bitmap_scale): Likewise.
24113
	(video_fb): Likewise.
24114
	(video): Likewise.
24115
	* grub-core/bus/usb/ohci.c (grub_ohci_td): Make link_td a pointer and
24116
	adjust padding accordingly. All users updated.
24117
	(grub_ohci_transaction): Fix bad format specification.
24118
	(GRUB_MOD_INIT): Add asserts for struct size.
24119
	* grub-core/bus/usb/uhci.c (grub_uhci_pci_iter): Add explicit casts.
24120
	(grub_alloc_td): Likewise.
24121
	(grub_free_queue): Likewise.
24122
	(grub_uhci_transfer): Likewise.
24123
	(grub_uhci_transaction): Fix bad format specification.
24124
	* grub-core/bus/usb/usbtrans.c (grub_usb_control_msg): Likewise.
24125
	(grub_usb_bulk_readwrite): Likewise.
24126
	* grub-core/kern/i386/misc.S (grub_stop): Moved from here ...
24127
	* grub-core/commands/i386/pc/halt.c (stop): ...here. Transformed into C.
24128
	Made static.
24129
	* grub-core/lib/i386/halt.c (stop): ... and here. Transformed into C.
24130
	Made static.
24131
	* grub-core/kern/i386/pc/startup.S (grub_halt): Moved from here ...
24132
	* grub-core/commands/i386/pc/halt.c (grub_halt): ...here.
24133
	Transformed into C.
24134
	* grub-core/kern/i386/pc/startup.S (grub_biosdisk_rw_int13_extensions):
24135
	Moved from here ...
24136
	* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw_int13_extensions):
24137
	... here. Transformed into C. Made static.
24138
	* grub-core/kern/i386/pc/startup.S (grub_biosdisk_rw_standard):
24139
	Moved from here ...
24140
	* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw_standard):
24141
	... here. Transformed into C. Made static.
24142
	* grub-core/kern/i386/pc/startup.S
24143
	(grub_biosdisk_check_int13_extensions): Moved from here ...
24144
	* grub-core/disk/i386/pc/biosdisk.c
24145
	(grub_biosdisk_check_int13_extensions): ... here. Transformed into C.
24146
	Made static.
24147
	* grub-core/kern/i386/pc/startup.S
24148
	(grub_biosdisk_get_cdinfo_int13_extensions): Moved from here ...
24149
	* grub-core/disk/i386/pc/biosdisk.c
24150
	(grub_biosdisk_get_cdinfo_int13_extensions): ... here.
24151
	Transformed into C. Made static.
24152
	* grub-core/kern/i386/pc/startup.S
24153
	(grub_biosdisk_get_diskinfo_int13_extensions): Moved from here ...
24154
	* grub-core/disk/i386/pc/biosdisk.c
24155
	(grub_biosdisk_get_diskinfo_int13_extensions): ... here.
24156
	Transformed into C. Made static.
24157
	* grub-core/kern/i386/pc/startup.S
24158
	(grub_biosdisk_get_diskinfo_standard): Moved from here ...
24159
	* grub-core/disk/i386/pc/biosdisk.c
24160
	(grub_biosdisk_get_diskinfo_standard): ... here.
24161
	Transformed into C. Made static.
24162
	* grub-core/kern/i386/pc/startup.S
24163
	(grub_biosdisk_get_num_floppies): Moved from here ...
24164
	* grub-core/disk/i386/pc/biosdisk.c
24165
	(grub_biosdisk_get_num_floppies): ... here.
24166
	Transformed into C. Made static.
24167
	* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_get_diskinfo_real):
24168
	New function.
24169
	* grub-core/kern/i386/pc/startup.S (grub_pxe_scan): Moved from here ...
24170
	* grub-core/fs/i386/pc/pxe.c (grub_pxe_scan): ... here.
24171
	Transformed into C. Made static.
24172
	* grub-core/kern/i386/pc/startup.S (grub_rm_entry): Moved from here ...
24173
	* grub-core/fs/i386/pc/pxe.c (grub_rm_entry): ... here.
24174
	Transformed into C. Made static.
24175
	* grub-core/kern/i386/ieee1275/init.c: Removed.
24176
	* grub-core/kern/i386/misc.S: Likewise.
24177
	* grub-core/kern/i386/pc/startup.S (grub_get_memsize):
24178
	Splitted from here ...
24179
	* grub-core/kern/i386/pc/init.c (grub_get_conv_memsize): ... here.
24180
	Transformed into C. Made static. All users updated.
24181
	* grub-core/kern/i386/pc/mmap.c (grub_get_ext_memsize): ... and here.
24182
	Transformed into C. Made static. All users updated.
24183
	* grub-core/kern/i386/pc/startup.S (grub_get_eisa_mmap):
24184
	Moved from here...
24185
	* grub-core/kern/i386/pc/mmap.c (grub_get_eisa_mmap): ... here.
24186
	Transformed into C. Made static. All users updated.
24187
	* grub-core/kern/i386/pc/startup.S (grub_get_mmap_entry):
24188
	Moved from here...
24189
	* grub-core/kern/i386/pc/mmap.c (grub_get_mmap_entry): ... here.
24190
	Transformed into C. Made static. All users updated.
24191
	* grub-core/kern/i386/pc/startup.S (grub_stop_floppy):
24192
	Removed (replaced by C version).
24193
	* grub-core/kern/i386/pc/startup.S (grub_vga_set_mode):
24194
	Moved from here...
24195
	* grub-core/video/i386/pc/vga.c (grub_vga_set_mode): ...here.
24196
	Transformed into C. Made static.
24197
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_controller_info):
24198
	Moved from here...
24199
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_controller_info):
24200
	... here. Transformed into C.
24201
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_mode_info):
24202
	Moved from here...
24203
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_mode_info):
24204
	... here. Transformed into C.
24205
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_mode):
24206
	Moved from here...
24207
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_mode):
24208
	... here. Transformed into C. Made static.
24209
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_mode):
24210
	Moved from here...
24211
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_mode):
24212
	... here. Transformed into C.
24213
	* grub-core/kern/i386/pc/startup.S
24214
	(grub_vbe_bios_getset_dac_palette_width):Moved from here...
24215
	* grub-core/video/i386/pc/vbe.c
24216
	(grub_vbe_bios_getset_dac_palette_width):... here. Transformed into C.
24217
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_memory_window):
24218
	Moved from here...
24219
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_memory_window):
24220
	... here. Transformed into C.
24221
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_memory_window):
24222
	Moved from here...
24223
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_memory_window):
24224
	... here. Transformed into C.
24225
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_scanline_length):
24226
	Moved from here...
24227
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_scanline_length):
24228
	... here. Transformed into C.
24229
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_scanline_length):
24230
	Moved from here...
24231
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_scanline_length):
24232
	... here. Transformed into C.
24233
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_display_start):
24234
	Moved from here...
24235
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_display_start):
24236
	... here. Transformed into C. Made static.
24237
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_display_start):
24238
	Moved from here...
24239
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_display_start):
24240
	... here. Transformed into C. Made static.
24241
	* grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_palette_data):
24242
	Moved from here...
24243
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_palette_data):
24244
	... here. Transformed into C. Made static.
24245
	* grub-core/kern/i386/pc/startup.S (grub_pxe_call): Receive
24246
	pxe_rm_entry as third argument.
24247
	(grub_bios_interrupt): New function.
24248
	* grub-core/kern/i386/qemu/mmap.c: Remove useless include.
24249
	* grub-core/kern/i386/qemu/startup.S (codestart): Do cli;hlt instead
24250
	of calling grub_stop.
24251
	* grub-core/kern/efi/efi.c (grub_halt): Moved from here ...
24252
	* grub-core/lib/efi/halt.c (grub_halt): ...here.
24253
	* grub-core/kern/emu/main.c (grub_halt): Moved from here ...
24254
	* grub-core/lib/emu/halt.c (grub_halt): ... here.
24255
	* grub-core/lib/i386/halt.c: Moved from here ...
24256
	* grub-core/lib/i386/halt.c: ... here.
24257
	* grub-core/kern/ieee1275/openfw.c (grub_halt): Moved from here ...
24258
	* grub-core/lib/ieee1275/halt.c (grub_halt): ... here.
24259
	* grub-core/loader/i386/pc/linux.c (grub_linux16_boot): Call
24260
	grub_stop_floppy.
24261
	* grub-core/loader/i386/xnu.c (guessfsb) [IEEE1275]: Enable.
24262
	* include/grub/i386/coreboot/init.h: Removed.
24263
	* include/grub/i386/multiboot/init.h: Likewise.
24264
	* include/grub/i386/pc/biosdisk.h: Removed all function prototypes.
24265
	* include/grub/i386/pc/init.h: Likewise except grub_gate_a20.
24266
	* include/grub/i386/pc/int.h: New file.
24267
	* include/grub/i386/pc/pxe.h (GRUB_PXE_SIGNATURE): New definition.
24268
	(grub_pxe_scan): Removed.
24269
	(grub_pxe_call): Update prototype.
24270
	* include/grub/i386/pc/vbe.h: Removed EXPORT_FUNC and useless
24271
	prototypes.
24272
	* include/grub/i386/pc/vga.h (grub_vga_set_mode): Removed.
24273
	* include/grub/i386/qemu/init.h: Removed.
24274
	* include/grub/mips/yeeloong/kernel.h (grub_reboot): Add missing
24275
	noreturn.
24276
	(grub_halt): Likewise.
24277
	* include/grub/misc.h (grub_halt): Removed EXPORT_FUNC.
24278
	(grub_reboot): Likewise.
24279
	* grub-core/kern/i386/coreboot/init.c (grub_stop_floppy): Moved from here...
24280
	* include/grub/i386/floppy.h (grub_stop_floppy): ...here. Inlined.
24281
	* grub-core/kern/i386/pc/startup.S (grub_hard_stop): Removed.
24282
24283
2010-08-30  Robert Millan  <rmh@gnu.org>
24284
24285
	* NEWS: Document addition of ZFS support in `grub-install' and
24286
	`grub-mkconfig'.
24287
24288
2010-08-30  BVK Chaitanya  <bvk.groups@gmail.com>
24289
24290
	* conf/Makefile.common (CPPFLAGS_DEFAULT): Remove leading / from
24291
	dprintf output.
24292
24293
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
24294
24295
	Remove leftover embedding of font objects.
24296
24297
	* include/grub/kernel.h (OBJ_TYPE_FONT): Removed.
24298
	* util/grub-install.in (font): Removed.
24299
	* util/grub-mkimage.c (generate_image): Remove font support. All users
24300
	updated.
24301
24302
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
24303
24304
	Remove leftover embedding of font objects.
24305
24306
	* include/grub/kernel.h (OBJ_TYPE_FONT): Removed.
24307
	* util/grub-install.in (font): Removed.
24308
	* util/grub-mkimage.c (generate_image): Remove font support. All users
24309
	updated.
24310
24311
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
24312
24313
	* docs/grub.texi (Network): Fix reference to pxe_blksize.
24314
	Reported by: Ian Turner
24315
24316
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
24317
24318
	* grub-core/normal/menu.c (grub_wait_after_message): Add a 10 second
24319
	timeout to avoid indefinite boot stalling.
24320
24321
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
24322
24323
	* grub-core/normal/color.c (grub_env_write_color_normal): Fix a warning.
24324
	(grub_env_write_color_highlight): Likewise.
24325
24326
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
24327
24328
	* grub-core/normal/term.c (print_more): Return to normal and not
24329
	to standard state after printing "---MORE---".
24330
24331
2010-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
24332
24333
	* grub-core/term/i386/vga_common.c (grub_console_setcolorstate):
24334
	Mask out the bit 0x80 since it has other meaning that specifiing color.
24335
24336
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
24337
24338
	New relocator. Allows for more kernel support and more straightforward
24339
	loader writing.
24340
24341
	* Makefile.am (BOOTTARGET): New variable.
24342
	(QEMU32): Likewise.
24343
	(linux.init.x86_64): New target.
24344
	(linux.init.i386): Likewise.
24345
	(multiboot.elf): Likewise.
24346
	(kfreebsd.elf): Likewise.
24347
	(kfreebsd.aout): Likewise.
24348
	(pc-chainloader.elf): Likewise.
24349
	(pc-chainloader.bin): Likewise.
24350
	(ntldr.elf): Likewise.
24351
	(ntldr.bin): Likewise.
24352
	(multiboot2.elf): Likewise.
24353
	(kfreebsd.init.x86_64): Likewise.
24354
	(kfreebsd.init.i386): Likewise.
24355
	(knetbsd.init.i386): Likewise.
24356
	(kopenbsd.init.i386): Likewise.
24357
	(knetbsd.init.x86_64): Likewise.
24358
	(kopenbsd.init.x86_64): Likewise.
24359
	(linux-initramfs.i386): Likewise.
24360
	(linux-initramfs.x86_64): Likewise.
24361
	(kfreebsd-mfsroot.i386.img): Likewise.
24362
	(knetbsd.image.i386): Likewise.
24363
	(kopenbsd.image.i386): Likewise.
24364
	(kopenbsd.image.x86_64): Likewise.
24365
	(knetbsd.miniroot-image.i386.img): Likewise.
24366
	(kfreebsd-mfsroot.x86_64.img): Likewise.
24367
	(knetbsd.image.x86_64): Likewise.
24368
	(knetbsd.miniroot-image.x86_64.img): Likewise.
24369
	(kfreebsd-mfsroot.i386.gz): Likewise.
24370
	(bootcheck-kfreebsd-i386): Likewise.
24371
	(kfreebsd-mfsroot.x86_64.gz): Likewise.
24372
	(bootcheck-kfreebsd-x86_64): Likewise.
24373
	(knetbsd.miniroot-image.i386.gz): Likewise.
24374
	(bootcheck-knetbsd-i386): Likewise.
24375
	(bootcheck-kopenbsd-i386): Likewise.
24376
	(bootcheck-kopenbsd-x86_64): Likewise.
24377
	(knetbsd.miniroot-image.x86_64.gz): Likewise.
24378
	(bootcheck-knetbsd-x86_64): Likewise.
24379
	(bootcheck-linux-i386): Likewise.
24380
	(bootcheck-linux-x86_64): Likewise.
24381
	(bootcheck-linux16-i386): Likewise.
24382
	(bootcheck-linux16-x86_64): Likewise.
24383
	(bootcheck-multiboot): Likewise.
24384
	(bootcheck-multiboot2): Likewise.
24385
	(bootcheck-kfreebsd-aout): Likewise.
24386
	(bootcheck-pc-chainloader): Likewise.
24387
	(bootcheck-ntldr): Likewise.
24388
	(CLEANFILES): Add new targets.
24389
	(BOOTCHECKS): New variable.
24390
	(.PHONY): Add bootchecks.
24391
	(SUCCESSFUL_BOOT_STRING): New variable.
24392
	(BOOTCHECK_TIMEOUT): Likewise.
24393
	(bootcheck): New target
24394
	* Makefile.util.def (grub-mkrescue): Enable on i386-multiboot.
24395
	* configure.ac: Correct efiemu excuse.
24396
	* docs/grub.texi (Supported kernels): New chapter.
24397
	* grub-core/Makefile.am (KERNEL_HEADER_FILES): Add
24398
	include/grub/mm_private.h. Simplify inclusion of
24399
	include/grub/boot.h, include/grub/loader.h
24400
	and include/grub/msdos_partition.h
24401
	(KERNEL_HEADER_FILES) [i386_coreboot]:
24402
	Remove include/grub/machine/loader.h. Add include/grub/i386/pit.h.
24403
	(KERNEL_HEADER_FILES) [i386_multiboot]: Likewise.
24404
	(KERNEL_HEADER_FILES) [i386_qemu]: Likewise.
24405
	(KERNEL_HEADER_FILES) [i386_ieee1275]: Remove
24406
	include/grub/machine/loader.h.
24407
	(KERNEL_HEADER_FILES) [x86_64-efi]: Likewise.
24408
	* grub-core/Makefile.core.def (kernel): Remove kern/i386/loader.S from
24409
	extra_dist.
24410
	(pci.mod): Enable on i386-multiboot.
24411
	(acpi.mod): Enable on i386-multiboot and i386-coreboot.
24412
	(efiemu.mod): Enable on i386-coreboot, i386-ieee1275, i386-multiboot and
24413
	i386-qemu.
24414
	(relocator.mod): Rewritten.
24415
	(aout.mod): Enable on all x86.
24416
	(bsd.mod): Likewise.
24417
	(ntldr.mod): New module.
24418
	(linux.mod): Use loader/i386/linux.c on all x86.
24419
	(xnu.mod): Enable on all x86.
24420
	(vga_text.mod): disable on EFI and QEMU.
24421
	* grub-core/efiemu/i386/coredetect.c: Remove useless include.
24422
	* grub-core/efiemu/i386/pc/cfgtables.c: Likewise.
24423
	* grub-core/efiemu/loadcore.c: Likewise.
24424
	* grub-core/efiemu/main.c: Likewise.
24425
	(grub_efiemu_exit_boot_services): Removed.
24426
	(grub_efiemu_finish_boot_services): Likewise.
24427
	* grub-core/efiemu/mm.c (grub_efiemu_finish_boot_services): New
24428
	function.
24429
	* grub-core/efiemu/i386/nocfgtables.c: New file.
24430
	* grub-core/kern/dl.c (grub_dl_unload_all): Removed.
24431
	* grub-core/kern/efi/efi.c (grub_efi_exit_boot_services): Removed.
24432
	(grub_efi_finish_boot_services): Moved from here ...
24433
	* grub-core/kern/efi/mm.c (grub_efi_finish_boot_services): ...here.
24434
	Fille finish memory map and related data.
24435
	(finish_mmap_buf): New variable.
24436
	(grub_efi_uintn_t finish_mmap_size): Likewise.
24437
	(grub_efi_uintn_t finish_key): Likewise.
24438
	(grub_efi_uintn_t finish_desc_size): Likewise.
24439
	(grub_efi_uint32_t finish_desc_version): Likewise.
24440
	(grub_efi_is_finished): Likewise.
24441
	(grub_efi_get_memory_map): Use saved memory map if EFI is already
24442
	finished.
24443
	* grub-core/kern/elf.c (grub_elf32_phdr_iterate): Make global.
24444
	(grub_elf64_phdr_iterate): Likewise.
24445
	* grub-core/kern/i386/coreboot/init.c (grub_os_area_addr): Removed.
24446
	(grub_os_area_size): Likewise.
24447
	(grub_machine_init): Don't reserve os area.
24448
	* grub-core/kern/i386/coreboot/startup.S: Don't include loader.S.
24449
	* grub-core/kern/i386/ieee1275/startup.S: Likewise.
24450
	* grub-core/kern/i386/loader.S: Removed.
24451
	* grub-core/kern/i386/pc/init.c (grub_os_area_addr): Removed.
24452
	(grub_os_area_size): Likewise.
24453
	(grub_machine_init): Don't reserve os area.
24454
	* grub-core/kern/i386/pc/startup.S (grub_chainloader_real_boot):
24455
	Don't call grub_dl_unload_all.
24456
	Don't include loader.S.
24457
	* grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_iterate):
24458
	Declare the memory after _end as available.
24459
	* grub-core/kern/mm.c (GRUB_MM_FREE_MAGIC): Moved from here...
24460
	* include/grub/mm_private.h (GRUB_MM_FREE_MAGIC): ... here.
24461
	(GRUB_MM_ALLOC_MAGIC): Moved from here...
24462
	* include/grub/mm_private.h (GRUB_MM_ALLOC_MAGIC): ... here.
24463
	* grub-core/kern/mm.c (grub_mm_header): Moved from here...
24464
	* include/grub/mm_private.h (grub_mm_header): ... here.
24465
	* grub-core/kern/mm.c (GRUB_MM_ALIGN): Moved from here...
24466
	* include/grub/mm_private.h (GRUB_MM_ALIGN): ... here.
24467
	* grub-core/kern/mm.c (grub_mm_region): Moved from here ...
24468
	(grub_mm_region): ..here. Removed addr. Added pre_size.
24469
	All users updated.
24470
	* grub-core/kern/mm.c (base): Renamed to ...
24471
	(grub_mm_base): ... this. Made global.
24472
	(grub_real_malloc): Alloc from end of region.
24473
	(grub_memalign): Don't attempt to malloc if grub_mm_base is NULL.
24474
	* grub-core/kern/powerpc/cache.S (grub_arch_sync_caches): Move to ...
24475
	* grub-core/kern/powerpc/cache_flush.S: ... here.
24476
	* grub-core/lib/efi/relocator.c: New file.
24477
	* grub-core/lib/i386/relocator.c: Rewritten.
24478
	* grub-core/lib/i386/relocator16.S: New file.
24479
	* grub-core/lib/i386/relocator32.S: Likewise.
24480
	* grub-core/lib/i386/relocator64.S: Likewise.
24481
	* grub-core/lib/i386/relocator_asm.S: Rewritten.
24482
	* grub-core/lib/i386/relocator_common.S: New file.
24483
	* grub-core/lib/ieee1275/relocator.c: Likewise.
24484
	* grub-core/lib/mips/relocator.c: Rewritten.
24485
	* grub-core/lib/mips/relocator_asm.S: Renamed variables and minor
24486
	stylistic adjustments.
24487
	* grub-core/lib/powerpc/relocator.c: New file.
24488
	* grub-core/lib/powerpc/relocator_asm.S: Likewise.
24489
	* grub-core/lib/relocator.c: Rewritten.
24490
	* grub-core/lib/x86_64/relocator_asm.S: New file.
24491
	* grub-core/loader/aout.c (grub_aout_load): Make load_addr a void *.
24492
	* grub-core/loader/i386/bsd.c (NETBSD_DEFAULT_VIDEO_MODE): New const.
24493
	(bsd_tag): New struct.
24494
	(tags): New variable.
24495
	(tags_last): Likewise.
24496
	(netbsd_module): New struct.
24497
	(netbsd_mods): New variable.
24498
	(netbsd_mods_last): Likewise.
24499
	(openbsd_opts): New parameter "serial".
24500
	(OPENBSD_SERIAL_ARG): New definition.
24501
	(netbsd_opts): New parameter "serial".
24502
	(NETBSD_SERIAL_ARG): New definition.
24503
	(grub_freebsd_add_meta): Reorganised into ...
24504
	(grub_bsd_add_meta): ...this. All users updated.
24505
	(grub_freebsd_add_mmap): Reorganised into ...
24506
	(generate_e820_mmap):  ...this...
24507
	(grub_bsd_add_mmap): ...and this.  All users updated.
24508
	(grub_freebsd_list_modules): Use tags.
24509
	(grub_netbsd_add_meta_module): New function.
24510
	(grub_netbsd_list_modules): Likewise.
24511
	(grub_freebsd_boot): Use relocator and finish EFI.
24512
	(grub_openbsd_boot): Likewise.
24513
	(grub_netbsd_setup_video): New function.
24514
	(grub_netbsd_add_modules): Likewise.
24515
	(grub_netbsd_boot): Use grub_netbsd_add_modules, relocator, netbsd_tags
24516
	and finish EFI.
24517
	(grub_bsd_unload): Unload tags.
24518
	(grub_bsd_load_aout): Use relocator.
24519
	(grub_bsd_elf32_size_hook): New function.
24520
	(grub_bsd_elf32_hook): Use relocator.
24521
	(grub_bsd_elf64_size_hook): New function.
24522
	(grub_bsd_elf64_hook): Use relocator.
24523
	(grub_bsd_load_elf): Use relocator and call grub_openbsd_find_ramdisk.
24524
	(grub_bsd_load): Zero-out openbsd_ramdisk.
24525
	(grub_bsd_load): Use relocator.
24526
	(grub_cmd_openbsd): Support serial.
24527
	(grub_cmd_netbsd): Support modules.
24528
	(grub_cmd_freebsd_module): Use relocator.
24529
	(grub_netbsd_module_load): New function.
24530
	(grub_cmd_netbsd_module): Likewise.
24531
	(grub_cmd_openbsd_ramdisk): Likewise.
24532
	(GRUB_MOD_INIT): Register knetbsd_module, knetbsd_module_elf and
24533
	kopenbsd_ramdisk.
24534
	(GRUB_MOD_FINI): Unregister new commands.
24535
	* grub-core/loader/i386/bsdXX.c (load): Remove useless checks.
24536
	(grub_freebsd_load_elfmodule_obj): Use relocator.
24537
	(grub_freebsd_load_elfmodule): Likewise.
24538
	(grub_freebsd_load_elf_meta): Likewise.
24539
	(grub_netbsd_load_elf_meta): New function.
24540
	(grub_openbsd_find_ramdisk): Likewise.
24541
	* grub-core/loader/i386/bsd_helper.S: Removed.
24542
	* grub-core/loader/i386/bsd_pagetable.c: Support relocator.
24543
	* grub-core/loader/i386/bsd_trampoline.S: Removed.
24544
	* grub-core/loader/i386/efi/linux.c: Likewise.
24545
	* grub-core/loader/i386/ieee1275/linux.c: Likewise.
24546
	* grub-core/loader/i386/linux.c (HAS_VGA_TEXT): New const.
24547
	(DEFAULT_VIDEO_MODE): Likewise.
24548
	(real_mode_target): New variable.
24549
	(prot_mode_target): Likewise.
24550
	(initrd_mem_target): Likewise.
24551
	(relocator): Likewise.
24552
	(efi_mmap_buf): Likewise.
24553
	(efi_mmap_size): Likewise.
24554
	(find_efi_mmap_size): Moved from grub-core/loader/i386/efi/linux.c.
24555
	(free_pages): Use relocator.
24556
	(allocate_pages): Account for efi_mmap and use relocator. Return error.
24557
	(grub_linux_setup_video): Return error.
24558
	(grub_linux_trampoline_start): Removed.
24559
	(grub_linux_trampoline_end): Likewise.
24560
	(grub_linux_boot): Use relocator and DEFAULT_VIDEO_MODE. Pass console
24561
	andd video parameters depending on firmware.
24562
	[GRUB_MACHINE_IEEE1275]: Pass OFW parameters.
24563
	[GRUB_MACHINE_EFI]: Pass EFI parameters.
24564
	(grub_cmd_linux) [GRUB_MACHINE_EFI]: Likewise.
24565
	(grub_cmd_initrd): Use relocator.
24566
	* grub-core/loader/i386/linux_trampoline.S: Removed.
24567
	* grub-core/loader/i386/multiboot_mbi.c (elf_sec_num): New variable.
24568
	(elf_sec_entsize): Likewise.
24569
	(elf_sec_shstrndx): Likewise.
24570
	(elf_sections): Likewise.
24571
	(grub_multiboot_load): Use relocator.
24572
	(grub_multiboot_get_mbi_size): Account for sections.
24573
	(grub_multiboot_make_mbi): Use relocator and support sections.
24574
	(grub_multiboot_add_elfsyms): New function.
24575
	(grub_multiboot_free_mbi): Free sections.
24576
	* grub-core/loader/i386/pc/linux.c (relocator): New variable.
24577
	(grub_linux_real_target): Likewise.
24578
	(grub_linux_real_chunk): Likewise.
24579
	(grub_linux16_prot_size): Likewise.
24580
	(grub_linux16_boot): Use relocator.
24581
	(grub_linux_unload): Unload relocator.
24582
	(grub_cmd_linux): Use relocator.
24583
	(grub_cmd_initrd): Likewise.
24584
	* grub-core/loader/i386/pc/ntldr.c: New file.
24585
	* grub-core/loader/i386/xnu.c (guessfsb) [GRUB_MACHINE_IEEE1275]:
24586
	Don't try to guess CPU frequency.
24587
	(grub_xnu_set_video): Stretch bitmap.
24588
	(grub_xnu_boot): Use relocator.
24589
	* grub-core/loader/mips/linux.c (grub_linux_boot): Use relocator.
24590
	(grub_linux_unload): Free relocator.
24591
	(grub_linux_load32): Use relocator.
24592
	(grub_linux_load64): Likewise.
24593
	(grub_cmd_initrd): Likewise.
24594
	* grub-core/loader/multiboot.c (grub_multiboot_boot): Use relocator.
24595
	(grub_multiboot_unload): Unload relocator.
24596
	(grub_cmd_multiboot): Use relocator.
24597
	(grub_cmd_module): Likewise.
24598
	* grub-core/loader/multiboot_elfxx.c (grub_multiboot_load_elfXX):
24599
	Use relocator and support sections.
24600
	* grub-core/loader/multiboot_mbi2.c(elf_sec_num): New variable.
24601
	(elf_sec_entsize): Likewise.
24602
	(elf_sec_shstrndx): Likewise.
24603
	(elf_sections): Likewise.
24604
	(grub_multiboot_load): Use relocator.
24605
	(grub_multiboot_get_mbi_size): Account for sections.
24606
	(grub_multiboot_make_mbi): Use relocator and support sections.
24607
	(grub_multiboot_add_elfsyms): New function.
24608
	* grub-core/loader/powerpc/ieee1275/linux.c: Remove useless include.
24609
	* grub-core/loader/sparc64/ieee1275/linux.c: Likewise.
24610
	* grub-core/loader/xnu.c (grub_xnu_heap_malloc): Use relocator.
24611
	Prototype changed. All users updated.
24612
	(grub_xnu_align_heap): Simplified.
24613
	(grub_xnu_writetree_toheap): Likewise.
24614
	(grub_xnu_unload): Unload relocator.
24615
	(grub_cmd_xnu_kernel): Use relocator.
24616
	(grub_cmd_xnu_kernel64): Likewise.
24617
	(grub_xnu_register_memory): Simplified.
24618
	* grub-core/loader/xnu_resume.c (grub_xnu_resume): Use relocator.
24619
	* grub-core/term/efi/console.c (grub_console_putchar): Abort if
24620
	EFI is finished.
24621
	(grub_console_checkkey): Likewise.
24622
	(grub_console_getkey): Likewise.
24623
	(grub_console_getwh): Likewise.
24624
	(grub_console_getxy): Likewise.
24625
	(grub_console_gotoxy): Likewise.
24626
	(grub_console_cls): Likewise.
24627
	(grub_console_setcolorstate): Likewise.
24628
	(grub_console_setcursor): Likewise.
24629
	* grub-core/term/ns8250.c (grub_ns8250_hw_get_port): New function.
24630
	* grub-core/tests/boot/kbsd.init-i386.S: New file.
24631
	* grub-core/tests/boot/kbsd.init-x86_64.S: Likewise.
24632
	* grub-core/tests/boot/kbsd.spec.txt: Likewise.
24633
	* grub-core/tests/boot/kernel-8086.S: Likewise.
24634
	* grub-core/tests/boot/kernel-i386.S: Likewise.
24635
	* grub-core/tests/boot/kfreebsd-aout.cfg: Likewise.
24636
	* grub-core/tests/boot/kfreebsd.cfg: Likewise.
24637
	* grub-core/tests/boot/kfreebsd.init-i386.S: Likewise.
24638
	* grub-core/tests/boot/kfreebsd.init-x86_64.S: Likewise.
24639
	* grub-core/tests/boot/knetbsd.cfg: Likewise.
24640
	* grub-core/tests/boot/kopenbsd.cfg: Likewise.
24641
	* grub-core/tests/boot/kopenbsdlabel.txt: Likewise.
24642
	* grub-core/tests/boot/linux.cfg: Likewise.
24643
	* grub-core/tests/boot/linux.init-i386.S: Likewise.
24644
	* grub-core/tests/boot/linux.init-x86_64.S: Likewise.
24645
	* grub-core/tests/boot/linux16.cfg: Likewise.
24646
	* grub-core/tests/boot/multiboot.cfg: Likewise.
24647
	* grub-core/tests/boot/multiboot2.cfg: Likewise.
24648
	* grub-core/tests/boot/ntldr.cfg: Likewise.
24649
	* grub-core/tests/boot/pc-chainloader.cfg: Likewise.
24650
	* include/grub/aout.h (grub_aout_load): Make load_addr a void *.
24651
	* include/grub/autoefi.h (grub_autoefi_finish_boot_services):
24652
	New definition.
24653
	* include/grub/dl.h (grub_dl_unload_all): Removed.
24654
	* include/grub/efi/efi.h (grub_efi_exit_boot_services): Likewise.
24655
	(grub_efi_finish_boot_services): Change prototype.
24656
	(grub_efi_is_finished): New variable.
24657
	* include/grub/efiemu/efiemu.h (grub_efiemu_finish_boot_services):
24658
	Changed prototype.
24659
	(grub_efiemu_finish_boot_services): Removed.
24660
	(grub_machine_efiemu_init_tables): New prototype.
24661
	* include/grub/elfload.h (grub_elf32_phdr_iterate): Likewise.
24662
	(grub_elf64_phdr_iterate): Likewise.
24663
	* include/grub/i386/bsd.h: Include relocator.h.
24664
	(freebsd_tag_header): New struct.
24665
	(grub_openbsd_bios_mmap): Removed.
24666
	(grub_unix_real_boot): Removed.
24667
	(grub_freebsd_load_elfmodule32): Changed prototype.
24668
	(grub_freebsd_load_elfmodule_obj64): Likewise.
24669
	(grub_freebsd_load_elf_meta32): Likewise.
24670
	(grub_freebsd_load_elf_meta64): Likewise.
24671
	(grub_freebsd_add_meta): Removed.
24672
	(grub_netbsd_load_elf_meta32): New prototype.
24673
	(grub_netbsd_load_elf_meta64): Likewise.
24674
	(grub_bsd_add_meta): Likewise.
24675
	(grub_openbsd_ramdisk_descriptor): New struct.
24676
	(grub_openbsd_find_ramdisk32): New prototype.
24677
	(grub_openbsd_find_ramdisk64): Likewise.
24678
	* include/grub/i386/coreboot/loader.h: Removed.
24679
	* include/grub/i386/efi/loader.h: Likewise.
24680
	* include/grub/i386/ieee1275/loader.h: Likewise.
24681
	* include/grub/i386/linux.h (linux_kernel_header): Change void *
24682
	to grub_uint32_t.
24683
	* include/grub/i386/loader.h: Removed.
24684
	* include/grub/i386/memory.h (GRUB_MEMORY_CPU_CR4_PAE_ON): Correct the
24685
	value.
24686
	(GRUB_MEMORY_CPU_CR4_PSE_ON): New definition.
24687
	(grub_phys_addr_t): New type.
24688
	(grub_vtop): New inline function.
24689
	(grub_map_memory): Likewise.
24690
	(grub_unmap_memory): Likewise.
24691
	* include/grub/i386/multiboot/loader.h: Removed.
24692
	* include/grub/i386/netbsd_bootinfo.h (NETBSD_BTINFO_BOOTDISK): Removed.
24693
	(NETBSD_BTINFO_CONSOLE): New definition.
24694
	(NETBSD_BTINFO_SYMTAB): Likewise.
24695
	(NETBSD_BTINFO_MODULES): Likewise.
24696
	(NETBSD_BTINFO_FRAMEBUF): Likewise.
24697
	(grub_netbsd_bootinfo): New struct.
24698
	(grub_netbsd_btinfo_common): Use explicit bitsize.
24699
	(grub_netbsd_btinfo_mmap_entry): Removed.
24700
	(GRUB_NETBSD_MAX_BOOTPATH_LEN): New definition.
24701
	(grub_netbsd_btinfo_bootdisk): New struct.
24702
	(grub_netbsd_btinfo_symtab): Likewise.
24703
	(grub_netbsd_btinfo_serial): Likewise.
24704
	(grub_netbsd_btinfo_modules): Likewise.
24705
	(grub_netbsd_btinfo_framebuf): Likewise.
24706
	(GRUB_NETBSD_MAX_ROOTDEVICE_LEN): New definition.
24707
	* include/grub/i386/openbsd_bootarg.h (OPENBSD_BOOTARG_CONSOLE):
24708
	Likewise.
24709
	(grub_openbsd_bootargs): Use explicit bitsize.
24710
	(grub_openbsd_bootarg_console): New struct.
24711
	(GRUB_OPENBSD_COM_MAJOR): New definition.
24712
	(GRUB_OPENBSD_VGA_MAJOR): Likewise.
24713
	* include/grub/i386/pc/efiemu.h: Removed.
24714
	* include/grub/i386/pc/loader.h: Don't include cpu/loader.h.
24715
	* include/grub/i386/qemu/loader.h: Removed.
24716
	* include/grub/i386/relocator.h: Rewritten.
24717
	* include/grub/i386/xnu.h (grub_xnu_heap_will_be_at): Removed.
24718
	* include/grub/mips/memory.h: New file.
24719
	* include/grub/mips/multiboot.h: Rewritten.
24720
	* include/grub/mips/relocator.h: Rewritten.
24721
	* include/grub/mips/yeeloong/memory.h (grub_phys_addr_t): New type.
24722
	(grub_vtop): New function.
24723
	(grub_map_memory): Likewise.
24724
	(grub_unmap_memory): Likewise.
24725
	* include/grub/misc.h (ALIGN_DOWN): New definition.
24726
	* include/grub/mm.h (grub_mm_check_real): New proto.
24727
	(GRUB_MM_CHECK): New definition.
24728
	* include/grub/mm_private.h: New file.
24729
	* include/grub/multiboot.h (grub_multiboot_relocator): New variable.
24730
	(grub_multiboot_get_mbi_size): Removed.
24731
	(grub_multiboot_make_mbi): Change prottype.
24732
	(grub_multiboot_set_accepts_video): New proto.
24733
	(grub_multiboot_add_elfsyms): Likewise.
24734
	(grub_multiboot_payload_eip): New variable.
24735
	* include/grub/ns8250.h (grub_ns8250_hw_get_port) [!ASM_FILE]:
24736
	New prototype.
24737
	* include/grub/offsets.h (GRUB_KERNEL_I386_MULTIBOOT_PREFIX):
24738
	New definition.
24739
	(GRUB_KERNEL_I386_MULTIBOOT_DATA_END): Likewise.
24740
	(GRUB_KERNEL_I386_MULTIBOOT_MOD_ALIGN): Likewise.
24741
	* include/grub/powerpc/ieee1275/loader.h: Removed.
24742
	* include/grub/powerpc/memory.h: New file.
24743
	* include/grub/powerpc/relocator.h: Likewise.
24744
	* include/grub/relocator.h: Likewise.
24745
	* include/grub/relocator_private.h: Likewise.
24746
	* include/grub/sparc64/ieee1275/loader.h: Removed.
24747
	* include/grub/x86_64/memory.h: New file.
24748
	* include/grub/xnu.h (grub_xnu_writetree_toheap): Changed prototype.
24749
	(grub_xnu_heap_malloc): Likewise.
24750
	(grub_xnu_heap_real_start): Removed.
24751
	(grub_xnu_heap_start): Likewise.
24752
	(grub_xnu_relocator): New variable.
24753
	(grub_xnu_heap_target_start): Likewise.
24754
	* tests/util/grub-shell.in: Support non-pc.
24755
	* util/grub-mkimage.c (image_targets): Fix multiboot target.
24756
24757
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
24758
24759
	* grub-core/normal/charset.c (grub_utf8_to_ucs4_alloc): Avoid deadloop
24760
	on malloc error.
24761
	(grub_bidi_logical_to_visual): Check that malloc succeded.
24762
	* grub-core/normal/term.c (grub_puts_terminal): Fix fallback to dumb
24763
	puts.
24764
	(grub_xputs_normal): Likewise.
24765
24766
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
24767
24768
	* grub-core/Makefile.core.def (kernel): Add kern/mips/cache_flush.S to
24769
	extra_dist.
24770
24771
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
24772
24773
	* grub-core/efiemu/runtime/efiemu.sh: Removed.
24774
24775
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
24776
24777
	* Makefile.util.def (grub-ofpathname): Add missing ldadd.
24778
24779
2010-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
24780
24781
	* grub-core/kern/misc.c (grub_real_dprintf): Always refresh after
24782
	dprintf.
24783
24784
2010-08-29  BVK Chaitanya  <bvk.groups@gmail.com>
24785
24786
	* Makefile.util.def: Use ldadd instead of ldflags for libraries.
24787
24788
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
24789
24790
	* grub-core/normal/term.c (print_more): Fix a memory leak.
24791
	(grub_puts_terminal): Revert to dumb puts if memory allocation fails.
24792
	(grub_xputs_normal): Likewise.
24793
24794
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
24795
24796
	* grub-core/script/lexer.c (grub_script_lexer_init): Don't look before
24797
	the begining of the string
24798
24799
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
24800
24801
	* grub-core/script/script.c (grub_script_parse): Free parsed on
24802
	failure.
24803
24804
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
24805
24806
	* grub-core/normal/completion.c (grub_normal_do_completion): Free argv
24807
	on failure.
24808
24809
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
24810
24811
	* grub-core/normal/cmdline.c (grub_cmdline_get): Free cl_terms on
24812
	return.
24813
24814
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
24815
24816
	* grub-core/term/gfxterm.c (grub_gfxterm_term_fini): Free the text buffer.
24817
	(scroll_up): Fix a memory leak.
24818
24819
2010-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
24820
24821
	* grub-core/fs/nilfs2.c (grub_nilfs2_load_sb): Handle grub_disk_read
24822
	errors.
24823
24824
2010-08-27  Vladimir Serbinenko  <phcoder@gmail.com>
24825
24826
	Handle USB pendrives exposed as floppies.
24827
24828
	* grub-core/boot/i386/pc/boot.S: Check LBA even on what appears to be
24829
	floppy.
24830
	* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Likewise.
24831
	Check for partitions on all devices.
24832
24833
2010-08-25  Vladimir Serbinenko  <phcoder@gmail.com>
24834
24835
	* grub-core/term/ieee1275/ofconsole.c (put): Correct prototype.
24836
	(readkey): Likewise.
24837
24838
2010-08-25  BVK Chaitanya  <bvk.groups@gmail.com>
24839
24840
	Multiple variable names support to "export" command.
24841
24842
	* normal/context.c (grub_cmd_export): "export" command supports
24843
	multiple variable names.
24844
24845
2010-08-23  Samuel Thibault  <samuel.thibault@ens-lyon.org>
24846
24847
	* util/grub.d/30_os-prober.in: Fix conversion from grub-probe
24848
	--target=drive output to Mach device name.
24849
24850
2010-08-23  BVK Chaitanya  <bvk.groups@gmail.com>
24851
24852
	New Automake based build system for GRUB.
24853
24854
	* ABOUT-NLS: New file.
24855
	* Makefile.am: New file. GRUB host utils' rules that doesn't fit
24856
	in Makefile.util.def file.
24857
	* Makefile.util.def: New file.  Autogen build definitions file for
24858
	GRUB host utils.
24859
	* conf/Makefile.common: New file.  Common variables for GRUB host
24860
	utils and target modules.
24861
	* conf/Makefile.extra-dist: New file.  Extra files for make dist.
24862
	* docs/Makefile.am: New file.  Automake file for docs.
24863
	* gentpl.py: New file.  Python script to generate Autogen
24864
	template.
24865
	* grub-core/Makefile.am: New file.  GRUB target modules' rules
24866
	that doesn't fit in Makefile.core.def file.
24867
	* grub-core/Makefile.core.def: New file.  Autogen build
24868
	definitions file for GRUB target modules.
24869
	* grub-core/lib/setjmp.S: New file.  Wrapper for target_cpu
24870
	specific setjmp.S file.
24871
	* po/Makefile.am: New file.
24872
24873
	* .bzrignore: New ignores.
24874
	* INSTALL: New requirements, without Ruby.
24875
	* acinclude.m4: Use TARGET_IMG_BASE_LDOPT variable instead.
24876
	* autogen.sh: Updated to invoke autogen as necessary.
24877
	* configure.ac: Separate *FLAGS with HOST_ and TARGET_ prefixes,
24878
	and defines for Automake conditionals.
24879
	* geninit.sh: Refactoring.
24880
24881
	* include/grub/dl.h: Allow build rules to define GRUB_MOD_* if
24882
	necessary.
24883
	* include/grub/emu/getroot.h (grub_make_system_path_relative_to_its_root):
24884
	New prototype.
24885
24886
	* include/grub/test.h: Fix functional test modules' naming.
24887
	* grub-core/tests/example_functional_test.c: Fix test module name.
24888
24889
	* util/misc.c: Hosted versions' of grub functions for libgrub.a
24890
	* tests/lib/unit_test.c: Remove hosted versions of grub functions.
24891
	* util/grub-editenv.c: Likewise.
24892
	* util/grub-fstest.c: Likewise.
24893
	* util/grub-mkdevicemap.c: Likewise.
24894
	* util/grub-mkfont.c: Likewise.
24895
	* util/grub-mkimage.c: Likewise.
24896
	* util/grub-mkpasswd-pbkdf2.c: Likewise.
24897
	* util/grub-probe.c: Likewise.
24898
	* util/grub-script-check.c: Likewise.
24899
	* util/i386/pc/grub-setup.c: Likewise.
24900
	* util/sparc64/ieee1275/grub-setup.c: Likewise.
24901
24902
	* tests/util/grub-shell.in: Fix override directory path.
24903
	* util/grub-mkrescue.in: Replace @pkglib_DATA@ with files.
24904
	* util/import_gcry.py: Create Makefile.gcry.def file instead.
24905
24906
	* util/lvm.c: Update #includes.
24907
	* util/raid.c: Likewise.
24908
	* util/resolve.c: Likewise.
24909
	* grub-core/bus/emu/pci.c: Likewise.
24910
	* grub-core/lib/posix_wrap/stdlib.h: Likewise.
24911
	* grub-core/lib/posix_wrap/string.h: Likewise.
24912
	* grub-core/kern/emu/main.c: Likewise.
24913
24914
	* grub-core/gensymlist.sh: New file.  Script for generating kernel
24915
	symbols file.
24916
	* grub-core/genmoddep.awk: Support new kernel_syms.lst format.
24917
24918
	* grub-core/gentrigtables.c: Fix unused variable warnings.
24919
24920
	* Makefile.in: Removed.
24921
	* conf/any-emu.rmk: Removed.
24922
	* conf/common.rmk: Removed.
24923
	* conf/i386-coreboot.rmk: Removed.
24924
	* conf/i386-efi.rmk: Removed.
24925
	* conf/i386-ieee1275.rmk: Removed.
24926
	* conf/i386-multiboot.rmk: Removed.
24927
	* conf/i386-pc.rmk: Removed.
24928
	* conf/i386-qemu.rmk: Removed.
24929
	* conf/i386.rmk: Removed.
24930
	* conf/mips-yeeloong.rmk: Removed.
24931
	* conf/mips.rmk: Removed.
24932
	* conf/powerpc-ieee1275.rmk: Removed.
24933
	* conf/sparc64-ieee1275.rmk: Removed.
24934
	* conf/tests.rmk: Removed.
24935
	* conf/x86-efi.rmk: Removed.
24936
	* conf/x86_64-efi.rmk: Removed.
24937
	* gendistlist.sh: Removed.
24938
	* geninitheader.sh: Removed.
24939
	* genkernsyms.sh.in: Removed.
24940
	* genmk.rb: Removed.
24941
	* gensymlist.sh.in: Removed.
24942
	* mkinstalldirs: Removed.
24943
	* boot: Moved ...
24944
	* grub-core/boot: ... to here.
24945
	* bus: Moved ...
24946
	* grub-core/bus: ... to here.
24947
	* commands: Moved ...
24948
	* grub-core/commands: ... to here.
24949
	* disk: Moved ...
24950
	* grub-core/disk: ... to here.
24951
	* efiemu: Moved ...
24952
	* grub-core/efiemu: ... to here.
24953
	* font: Moved ...
24954
	* grub-core/font: ... to here.
24955
	* fs: Moved ...
24956
	* grub-core/fs: ... to here.
24957
	* gencmdlist.sh: Moved ...
24958
	* grub-core/gencmdlist.sh: ... to here.
24959
	* genemuinit.sh: Moved ...
24960
	* grub-core/genemuinit.sh: ... to here.
24961
	* genemuinitheader.sh: Moved ...
24962
	* grub-core/genemuinitheader.sh: ... to here.
24963
	* genfslist.sh: Moved ...
24964
	* grub-core/genfslist.sh: ... to here.
24965
	* genhandlerlist.sh: Moved ...
24966
	* grub-core/genhandlerlist.sh: ... to here.
24967
	* genmoddep.awk: Moved ...
24968
	* grub-core/genmoddep.awk: ... to here.
24969
	* genmodsrc.sh: Moved ...
24970
	* grub-core/genmodsrc.sh: ... to here.
24971
	* genpartmaplist.sh: Moved ...
24972
	* grub-core/genpartmaplist.sh: ... to here.
24973
	* genparttoollist.sh: Moved ...
24974
	* grub-core/genparttoollist.sh: ... to here.
24975
	* genterminallist.sh: Moved ...
24976
	* grub-core/genterminallist.sh: ... to here.
24977
	* gentrigtables.c: Moved ...
24978
	* grub-core/gentrigtables.c: ... to here.
24979
	* genvideolist.sh: Moved ...
24980
	* grub-core/genvideolist.sh: ... to here.
24981
	* gettext: Moved ...
24982
	* grub-core/gettext: ... to here.
24983
	* gfxmenu: Moved ...
24984
	* grub-core/gfxmenu: ... to here.
24985
	* gnulib: Moved ...
24986
	* grub-core/gnulib: ... to here.
24987
	* hello: Moved ...
24988
	* grub-core/hello: ... to here.
24989
	* hook: Moved ...
24990
	* grub-core/hook: ... to here.
24991
	* io: Moved ...
24992
	* grub-core/io: ... to here.
24993
	* kern: Moved ...
24994
	* grub-core/kern: ... to here.
24995
	* lib: Moved ...
24996
	* grub-core/lib: ... to here.
24997
	* loader: Moved ...
24998
	* grub-core/loader: ... to here.
24999
	* mmap: Moved ...
25000
	* grub-core/mmap: ... to here.
25001
	* normal: Moved ...
25002
	* grub-core/normal: ... to here.
25003
	* partmap: Moved ...
25004
	* grub-core/partmap: ... to here.
25005
	* parttool: Moved ...
25006
	* grub-core/parttool: ... to here.
25007
	* script: Moved ...
25008
	* grub-core/script: ... to here.
25009
	* term: Moved ...
25010
	* grub-core/term: ... to here
25011
	* tests/example_functional_test.c: Moved ...
25012
	* grub-core/tests/example_functional_test.c: ... to here.
25013
	* tests/lib/functional_test.c: Moved ...
25014
	* grub-core/tests/lib/functional_test.c: ... to here.
25015
	* tests/lib/test.c: Moved ...
25016
	* grub-core/tests/lib/test.c: ... to here.
25017
	* video: Moved ...
25018
	* grub-core/video: ... to here.
25019
25020
2010-08-23  BVK Chaitanya  <bvk.groups@gmail.com>
25021
25022
	Replace --enable-grub-emu-modules with grub-emu-lite.
25023
25024
	* kern/emu/cache.S: New file.  Wrapper for $target_cpu specific
25025
	cache.S.
25026
25027
	* include/grub/emu/misc.h (grub_emu_init): New prototype.
25028
	* kern/emu/full.c: New file. For grub-emu specific initialization.
25029
	* kern/emu/lite.c: New file. For grub-emu-lite initialization.
25030
	* kern/emu/main.c: Call initialization function grub_emu_init.
25031
25032
	* Makefile.in: Include grub-emu-lite in install.
25033
	* commands/parttool.c: Use grub_no_autoload to differentiate
25034
	between grub-emu and grub-emu-lite.
25035
	* include/grub/misc.h: New variable grub_no_autoload.
25036
25037
	* conf/any-emu.rmk: New rules for grub-emu-lite.
25038
	* configure.ac: Remove --enable-grub-emu-modules.
25039
	* genmk.rb: Cleanup unnecessary rules.
25040
	* include/grub/dl.h: Remove GRUB_NO_MODULES macro.
25041
25042
	* normal/main.c: Don't load list files on grub-emu-lite.
25043
	* util/misc.c (grub_arch_sync_caches): Removed.
25044
25045
2010-08-23  Colin Watson  <cjwatson@ubuntu.com>
25046
25047
	* kern/mips/startup.S (grub_prefix): Update comment to refer to
25048
	grub-mkimage rather than grub-mkelfimage.
25049
	* kern/powerpc/ieee1275/startup.S (grub_prefix): Likewise.
25050
25051
2010-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
25052
25053
	* term/at_keyboard.c (grub_at_keyboard_getkey_noblock): Don't discard
25054
	a key after CapsLock or NumLock. It's just a qemu bug.
25055
25056
2010-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
25057
25058
	* include/grub/usb.h (grub_usb_device): Add 'data' field back. It's
25059
	needed by libusb wrapper.
25060
25061
2010-08-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
25062
25063
	* docs/grub.texi (GNU/Hurd): Document booting GNU/Hurd.
25064
25065
2010-08-21  Vladimir Serbinenko  <phcoder@gmail.com>
25066
25067
	* loader/multiboot.c (grub_cmd_module): Don't unzip module if
25068
	--nounzip is passed.
25069
25070
2010-08-20  Vladimir Serbinenko  <phcoder@gmail.com>
25071
25072
	USB hotunplugging and USB serial support.
25073
25074
	* bus/usb/ohci.c (grub_ohci_transfer): Fill *actual and respect timeout.
25075
	* bus/usb/uhci.c (grub_free_queue): Compute *actual.
25076
	(grub_uhci_transfer): Respect timeout and set *actual.
25077
	* bus/usb/usb.c (grub_usb_device_initialize): Correctly skip fields of
25078
	non-standard length.
25079
	(grub_usb_device_attach): Autoload modules.
25080
	(GRUB_MOD_INIT): Set grub_term_poll_usb.
25081
	(GRUB_MOD_FINI): Unset grub_term_poll_usb.
25082
	* bus/usb/usbhub.c (grub_usb_hub): Replace speed with devices. All
25083
	users updated.
25084
	(grub_usb_add_hub): Fill nports and children.
25085
	(attach_root_port): Receive hub instead of controller.
25086
	All users updated. Fill hub->devices.
25087
	(grub_usb_root_hub): Allocate hub->devices.
25088
	(detach_device): New function.
25089
	(poll_nonroot_hub): Fill children and detach devices.
25090
	* bus/usb/usbtrans.c (grub_usb_bulk_readwrite): Accept timeout and
25091
	actual arguments. All users updated.
25092
	(grub_usb_bulk_read_extended): New function.
25093
	* bus/usb/serial/common.c: New file.
25094
	* bus/usb/serial/ftdi.c: Likewise.
25095
	* bus/usb/serial/pl2303.c: Likewise.
25096
	* commands/terminal.c (handle_command): Support wildcard.
25097
	* commands/usbtest.c: Output "Unknown" instead of empty string.
25098
	* conf/any-emu.rmk (pkglib_MODULES): Add usbserial_common.mod.
25099
	(usbserial_common_mod_SOURCES): New variable.
25100
	(usbserial_common_mod_CFLAGS): Likewise.
25101
	(usbserial_common_mod_LDFLAGS): Likewise.
25102
	(pkglib_MODULES): Add usbserial_pl2303.mod.
25103
	(usbserial_pl2303_mod_SOURCES): New variable.
25104
	(usbserial_pl2303_mod_CFLAGS): Likewise.
25105
	(usbserial_pl2303_mod_LDFLAGS): Likewise.
25106
	(pkglib_MODULES): Add usbserial_ftdi.mod.
25107
	(usbserial_ftdi_mod_SOURCES): New variable.
25108
	(usbserial_ftdi_mod_CFLAGS): Likewise.
25109
	(usbserial_ftdi_mod_LDFLAGS): Likewise.
25110
	(pkglib_MODULES): Add serial.mod.
25111
	(serial_mod_SOURCES): New variable.
25112
	(serial_mod_CFLAGS): Likewise.
25113
	(serial_mod_LDFLAGS): Likewise.
25114
	* conf/i386-pc.rmk: Likewise.
25115
	* conf/mips-yeeloong.rmk: Likewise.
25116
	* conf/i386.rmk (serial_mod_SOURCES): Add term/ns8250.c.
25117
	* conf/mips-yeeloong.rmk (kernel_img_SOURCES): Likewise.
25118
	* disk/usbms.c (first_available_slot): New variable.
25119
	(grub_usbms_attach): Don't reuse free slots due to potential cache
25120
	problems.
25121
	* include/grub/serial.h: Moved to ..
25122
	* include/grub/ns8250.h: ...this.
25123
	* include/grub/serial.h: New file.
25124
	* include/grub/term.h (grub_term_poll_usb): New variable.
25125
	* include/grub/terminfo.h (grub_terminfo_input_state): Pass term to
25126
	readkey. All users updated.
25127
	(grub_terminfo_output_state): Pass term to put.
25128
	* include/grub/usb.h (GRUB_USB_REQTYPE): New enum.
25129
	(grub_usb_controller_dev): Add timeout and actual arguments to
25130
	transfer. All users updated.
25131
	(grub_usb_interface): New field detach_data.
25132
	(grub_usb_device): New fields children and nports.
25133
	(grub_usb_ep_type_t): New type.
25134
	(grub_usb_get_ep_type): New function.
25135
	(grub_usb_bulk_read_extended): Likewise.
25136
	* include/grub/usbdesc.h (grub_usb_desc): New type.
25137
	* include/grub/usbserial.h: New file.
25138
	* include/grub/usbtrans.h (grub_usb_transaction): New field preceding.
25139
	* kern/term.c (grub_term_poll_usb): New variable.
25140
	(grub_getkey): Call grub_term_poll_usb if set.
25141
	(grub_checkkey): Likewise.
25142
	(grub_getkeystatus): Likewise.
25143
	* term/serial.c: Moved controller-specific parts to ...
25144
	* term/ns8250.c: ... here.
25145
	* term/serial.c: Mostly rewritten.
25146
	* term/usb_keyboard.c: Reorganised to use GET_REPORT only on attaching
25147
	according to spec.
25148
25149
2010-08-20  Robert Millan  <rmh@gnu.org>
25150
25151
	Make kFreeBSD code more generic to support ext2fs as root, ufs as
25152
	a separate module and maybe other interesting combinations.
25153
25154
	* util/grub.d/10_kfreebsd.in (load_kfreebsd_module): New function.
25155
	(kfreebsd_entry): Use load_kfreebsd_module() to load modules.
25156
	(kfreebsd_entry): Add generic filesystem module load routine.
25157
	Map GRUB `ext2' to kFreeBSD `ext2fs'.
25158
25159
2010-08-20  Colin Watson  <cjwatson@ubuntu.com>
25160
25161
	* commands/i386/pc/sendkey.c (keysym_table): Rename "numlock" to
25162
	"numcenter" (I misunderstood the purpose of this entry).
25163
	* docs/grub.texi (sendkey): Likewise.
25164
25165
2010-08-20  Colin Watson  <cjwatson@ubuntu.com>
25166
25167
	* commands/i386/pc/sendkey.c (options): Remove "keep" from all
25168
	status flag options; simply omitting the option is equivalent and
25169
	simpler.  Rename "wait" to "pause".  Rename "sysreq" to "sysrq".
25170
	(keysym_table): Rename "num5numlock" to "numlock".
25171
	(grub_cmd_sendkey): Reinitialise `andmask' and `ormask', so that we
25172
	can uniformly say that only the last of multiple `sendkey'
25173
	invocations has any effect.
25174
	* docs/grub.texi (sendkey): New section.
25175
25176
2010-08-19  Colin Watson  <cjwatson@ubuntu.com>
25177
25178
	* commands/i386/pc/sendkey.c (options): Fix three typos.
25179
25180
2010-08-19  Vladimir Serbinenko  <phcoder@gmail.com>
25181
25182
	Implement sendkey support.
25183
25184
	* commands/i386/pc/sendkey.c: New file.
25185
	* conf/i386-pc.rmk (pkglib_MODULES): Add sendkey.mod.
25186
	(sendkey_mod_SOURCES): New variable.
25187
	(sendkey_mod_CFLAGS): Likewise.
25188
	(sendkey_mod_LDFLAGS): Likewise.
25189
25190
2010-08-18  Colin Watson  <cjwatson@ubuntu.com>
25191
25192
	* configure.ac: Move AM_INIT_AUTOMAKE after AC_CANONICAL_TARGET to
25193
	fix warnings from Autoconf.
25194
25195
2010-08-18  Colin Watson  <cjwatson@ubuntu.com>
25196
25197
	* acinclude.m4 (grub_ASM_USCORE): Use a more accurate grep pattern,
25198
	to avoid false positives with some assemblers that output things
25199
	like "someprefix_func" as part of their output.
25200
25201
2010-08-15  Robert Millan  <rmh@gnu.org>
25202
25203
	* kern/emu/misc.c (grub_get_libzfs_handle): Handle libzfs_init()
25204
	errors.
25205
	* kern/emu/getroot.c (find_root_device_from_libzfs): Handle
25206
	grub_get_libzfs_handle() errors.
25207
25208
2010-08-14  Robert Millan  <rmh@gnu.org>
25209
25210
	* kern/emu/misc.c (grub_find_zpool_from_dir): Abort function if
25211
	filesystem is not ZFS.
25212
25213
2010-08-12  BVK Chaitanya  <bvk.groups@gmail.com>
25214
25215
	Fix for misspelled color names defaulting to black/black (bug
25216
	reported by Doug Nazar)
25217
25218
	* include/grub/normal.h (grub_parse_color_name_pair): Add return
25219
	status to prototype.
25220
	* normal/color.c (grub_parse_color_name_pair): Return failure
25221
	status.
25222
	(grub_env_write_color_normal): Ignore bad color names.
25223
	(grub_env_write_color_highlight): Likewise.
25224
	* normal/main.c (GRUB_MOD_INIT): Set default color names.
25225
25226
2010-08-12  BVK Chaitanya  <bvk.groups@gmail.com>
25227
25228
	"shift" command support to GRUB script.
25229
25230
	* include/grub/script_sh.h (grub_script_shift): New prototype.
25231
	* script/execute.c (grub_script_shift): New function.
25232
	* script/main.c (grub_script_init): Register shift command.
25233
	(grub_script_fini): Unregister shift command.
25234
	* util/grub-script-check.c (grub_script_cmd_shift): New function.
25235
25236
	* tests/grub_script_shift.in: New testcase.
25237
	* conf/tests.rmk: Rules for new testcase.
25238
25239
2010-08-12  BVK Chaitanya  <bvk.groups@gmail.com>
25240
25241
	"continue" command support to GRUB script.
25242
25243
	* script/execute.c (grub_script_execute_cmdwhile): Continue support.
25244
	(grub_script_break): Continue support.
25245
	* script/main.c (grub_script_init): Register continue command.
25246
	(grub_script_fini): Unregister continue command.
25247
25248
	* tests/grub_script_continue.in: New testcase.
25249
	* conf/tests.rmk: Rules for new testcase.
25250
25251
2010-08-12  BVK Chaitanya  <bvk@dbook>
25252
25253
	"break" command support to GRUB script.
25254
25255
	* conf/common.rmk: Rule updates to grub-script-check.
25256
	* include/grub/misc.h (grub_min): New function.
25257
	* include/grub/script_sh.h (grub_script_init): New prototype.
25258
	(grub_script_fini): New prototype.
25259
	(grub_script_break): New prototype.
25260
	* script/main.c (grub_script_init): New function.
25261
	(grub_script_fini): New function.
25262
	* script/execute.c (grub_script_break): New function.
25263
	* normal/main.c: Calls to grub_script_{init,fini}.
25264
	* util/grub-script-check.c (grub_script_break): New function.
25265
25266
	* tests/grub_script_break.in: New testcase.
25267
	* conf/tests.rmk: Rules for new test case.
25268
25269
2010-08-12  BVK Chaitanya  <bvk.groups@gmail.com>
25270
25271
	Function parameters support to GRUB script.
25272
25273
	* script/yylex.l (VARIABLE): Regular expression update.
25274
	* script/function.c (grub_script_function_call): Moved ...
25275
	* script/execute.c (grub_script_function_call): ... to here.
25276
	(grub_script_execute_arglist_to_argv): Removed.
25277
	(grub_script_arglist_to_argv): New function.
25278
	* script/argv.c: New file.
25279
	(grub_script_argv_free): New function.
25280
	(grub_script_argv_next): Likewise.
25281
	(grub_script_argv_append): Likewise.
25282
	(grub_script_argv_split_append): Likewise.
25283
	* include/grub/script_sh.h (grub_script_argv): New struct.
25284
	(grub_script_argv_free): New function.
25285
	(grub_script_argv_next): Likewise.
25286
	(grub_script_argv_append): Likewise.
25287
	(grub_script_argv_split_append): Likewise.
25288
25289
	* conf/common.rmk (normal.mod): New source script/argv.c.
25290
25291
	* tests/grub_script_echo1.in: More tests.
25292
	* tests/grub_script_vars1.in: Likewise.
25293
	* tests/grub_script_functions.in: New test case.
25294
	* conf/tests.rmk: Rules for new testcase.
25295
25296
2010-08-12  BVK Chaitanya  <bvk.groups@gmail.com>
25297
25298
	Remove grub_script_cmdblock struct.
25299
25300
	* include/grub/script_sh.h: Remove grub_script_cmdblock.
25301
	* script/parser.y: Likewise.
25302
	* script/execute.c: Rename cmdblock suffix to cmdlist.
25303
	* script/script.c: Likewise.
25304
	* util/grub-script-check.c: Likewise.
25305
25306
2010-08-11  Yves Blusseau  <blusseau@zetam.org>
25307
25308
	* .bzrignore: add grub-macho2img
25309
25310
2010-08-11  Vladimir Serbinenko  <phcoder@gmail.com>
25311
25312
	* kern/i386/qemu/init.c (grub_qemu_init_cirrus): Fix compilation error.
25313
25314
2010-08-11  Vladimir Serbinenko  <phcoder@gmail.com>
25315
25316
	Remove the dump of sm712 initialisation sequence.
25317
25318
	* include/grub/pci.h (GRUB_PCI_CLASS_SUBCLASS_VGA): New const.
25319
	* include/grub/vga.h (GRUB_VGA_IO_ARX_READ): New register.
25320
	(GRUB_VGA_IO_MISC_WRITE): Likewise.
25321
	(GRUB_VGA_CR_*): Added many registers.
25322
	(GRUB_VGA_SR_*): Likewise.
25323
	(GRUB_VGA_GR_*): Likewise.
25324
	(grub_vga_write_arx): New function.
25325
	(grub_video_hw_config): New struct.
25326
	(grub_vga_set_geometry): New function.
25327
	* kern/i386/qemu/init.c (load_palette): Use grub_vga_write_arx and
25328
	GRUB_PCI_CLASS_SUBCLASS_VGA.
25329
	* video/cirrus.c (grub_video_cirrus_setup): Use grub_vga_set_geometry.
25330
	* video/sm712.c (grub_sm712_write_reg): New function
25331
	(grub_sm712_read_reg): Likewise.
25332
	(grub_sm712_sr_write): Likewise.
25333
	(grub_sm712_gr_write): Likewise.
25334
	(grub_sm712_cr_write): Likewise.
25335
	(grub_sm712_write_arx): Likewise.
25336
	(grub_sm712_cr_shadow_write): Likewise.
25337
	(grub_sm712_write_dda_lookup): Likewise.
25338
	(grub_video_sm712_setup): Initialise the video rather then
25339
	blindly replay the dump.
25340
	(main) [TEST]: Add a routine to be able to compile as standalone for
25341
	tests.
25342
	* video/sm712_init.c (sm712_init): Removed.
25343
	(sm712_sr_seq1): New array.
25344
	(sm712_sr_seq2): Likewise.
25345
25346
2010-08-10  Vladimir Serbinenko  <phcoder@gmail.com>
25347
25348
	* include/grub/vga.h: Add missing grub/pci.h include.
25349
25350
2010-08-10  Yves Blusseau  <blusseau@zetam.org>
25351
25352
	* util/grub-macho2img.c (main): fix typo
25353
25354
2010-08-10  Vladimir Serbinenko  <phcoder@gmail.com>
25355
25356
	* include/grub/vga.h (grub_vga_gr_write): Add GRUB_MACHINE_PCI_IO_BASE.
25357
	(grub_vga_gr_read): Likewise.
25358
	(grub_vga_cr_write): Likewise.
25359
	(grub_vga_cr_read): Likewise.
25360
	(grub_vga_sr_write): Likewise.
25361
	(grub_vga_sr_read): Likewise.
25362
	(grub_vga_palette_read): Likewise.
25363
	(grub_vga_palette_write): Likewise.
25364
	* video/sm712.c (GRUB_SM712_REG_BASE): New definition.
25365
	(grub_sm712_sr_read): New function.
25366
	(grub_video_sm712_setup): Use grub_vga_sr_write and grub_sm712_sr_read.
25367
	* video/sm712_init.c (sm712_init): Substract GRUB_MACHINE_PCI_IO_BASE.
25368
25369
2010-08-09  Robert Millan  <rmh@gnu.org>
25370
25371
	* kern/emu/misc.c (grub_make_system_path_relative_to_its_root): Filter
25372
	out unused variables on non-ZFS build.
25373
25374
2010-08-08  Robert Millan  <rmh@gnu.org>
25375
25376
	Fix path generation for sub-filesystems in ZFS.
25377
25378
	* kern/emu/misc.c (grub_make_system_path_relative_to_its_root): Add
25379
	missing slash.
25380
25381
2010-08-08  Robert Millan  <rmh@gnu.org>
25382
25383
	* util/grub-fstest.c (read_file, cmd_cmp): Improve error message.
25384
25385
2010-08-08  Robert Millan  <rmh@gnu.org>
25386
25387
	* util/grub.d/10_kfreebsd.in: When files required for ZFS do not
25388
	exist, issue a proper error message (rely on `ls' for translated
25389
	strings).
25390
25391
2010-08-08  Robert Millan  <rmh@gnu.org>
25392
25393
	Fix grub-probe invocation.
25394
25395
	* util/grub.d/10_kfreebsd.in: s/label/fs_label/g.
25396
25397
2010-08-04  Robert Millan  <rmh@gnu.org>
25398
25399
	* configure.ac: Remove checks for getfsstat() and getmntany().
25400
	Add checks for `<sys/param.h>' and `<sys/mount.h>'.
25401
	* kern/emu/misc.c [HAVE_GETMNTANY]: Remove `<sys/mnttab.h>'.
25402
	[HAVE_SYS_PARAM_H]: Include `<sys/param.h>'.
25403
	[HAVE_SYS_MOUNT_H]: Include `<sys/mount.h>'.
25404
	[HAVE_LIBZFS && HAVE_LIBNVPAIR] (find_mount_point_from_dir): Remove
25405
	function.
25406
	(grub_find_zpool_from_dir): Use statfs() instead of indirect matching
25407
	via find_mount_point_from_dir() and getfsstat() / getmntany().
25408
25409
2010-08-04  Robert Millan  <rmh@gnu.org>
25410
25411
	* include/grub/emu/misc.h (grub_find_mount_point_from_dir)
25412
	(grub_find_zpool_from_mount_point): Merge into ...
25413
	(grub_find_zpool_from_dir): ... this.
25414
	* kern/emu/misc.c: Likewise.
25415
25416
	* kern/emu/misc.c
25417
	(grub_make_system_path_relative_to_its_root): Replace
25418
	grub_find_mount_point_from_dir() / grub_find_zpool_from_mount_point()
25419
	with grub_find_zpool_from_dir().
25420
	* kern/emu/getroot.c (find_root_device_from_libzfs): Likewise.
25421
1.15.5 by Colin Watson
Import upstream version 1.98+20100804
25422
2010-08-04  Robert Millan  <rmh@gnu.org>
25423
25424
	Support OpenSolaris in ZFS device resolution.
25425
25426
	* configure.ac: Check for getmntany().
25427
	* kern/emu/misc.c [HAVE_GETMNTANY]: Include `<sys/mnttab.h>'.
25428
	[HAVE_GETMNTANY] (grub_find_zpool_from_mount_point): Add OpenSolaris
25429
	support.
25430
25431
2010-08-03  Robert Millan  <rmh@gnu.org>
25432
25433
	Fix grub-emu build.
25434
25435
	* include/grub/util/misc.h: Move `<grub/util/libzfs.h>' to ...
25436
	* include/grub/emu/misc.h: ... here.
25437
25438
	* include/grub/util/misc.h (grub_get_libzfs_handle): Move function ...
25439
	* include/grub/emu/misc.h (grub_get_libzfs_handle): ... here.
25440
25441
	* util/misc.c: Remove `<grub/util/libzfs.h>'.
25442
	[HAVE_LIBZFS] (libzfs_handle, fini_libzfs)
25443
	(grub_get_libzfs_handle): Move to ...
25444
	* kern/emu/misc.c [HAVE_LIBZFS] (__libzfs_handle, fini_libzfs)
25445
	(grub_get_libzfs_handle): ... here.
25446
25447
2010-08-03  BVK Chaitanya  <bvk.groups@gmail.com>
25448
25449
	* script/execute.c (grub_script_execute_cmdline): Check for NULL
25450
	as command name case.
25451
1.15.4 by Colin Watson
Import upstream version 1.98+20100802
25452
2010-08-02  Colin Watson  <cjwatson@ubuntu.com>
25453
25454
	* disk/raid.c (insert_array): Select unique numbers for named arrays
25455
	as well, for use as keys in the disk cache.
25456
25457
2010-08-01  Robert Millan  <rmh@gnu.org>
25458
25459
	* util/grub.d/10_kfreebsd.in: Initialize ${kfreebsd_device} as the
25460
	kFreeBSD device name, except on ZFS where the filesystem label is
25461
	used.
25462
	(kfreebsd_entry): On ZFS root, load `opensolaris.ko', `zfs.ko' and
25463
	`/boot/zfs/zpool.cache'.
25464
	Set mountfrom kernel variable using ${kfreebsd_device}.
25465
25466
2010-08-01  Robert Millan  <rmh@gnu.org>
25467
25468
	Make it even harder to use uninitialized `libzfs_handle' (and
25469
	make the interface a bit simpler).
25470
25471
	* include/grub/util/misc.h (grub_util_init_libzfs)
25472
	(libzfs_handle): Remove.
25473
	(grub_get_libzfs_handle): New prototype.
25474
25475
	* util/misc.c [HAVE_LIBZFS] (libzfs_handle): Add `static'
25476
	attribute.
25477
	(grub_util_init_libzfs): Remove.
25478
	(grub_get_libzfs_handle): New function.
25479
25480
	* kern/emu/getroot.c (find_root_device_from_libzfs): Use
25481
	grub_get_libzfs_handle() to obtain a libzfs handle instead of
25482
	accessing `libzfs_handle' directly.
25483
25484
2010-08-01  Robert Millan  <rmh@gnu.org>
25485
25486
	* include/grub/emu/misc.h (grub_find_mount_point_from_dir)
25487
	(grub_find_zpool_from_mount_point): New function prototypes.
25488
25489
	* kern/emu/getroot.c [HAVE_GETFSSTAT]: Move `<sys/mount.h>' to ...
25490
	* kern/emu/misc.c [HAVE_GETFSSTAT]: ... here.
25491
25492
	* kern/emu/getroot.c (find_mount_point_from_dir): Move to ...
25493
	* kern/emu/misc.c (grub_find_mount_point_from_dir): ... this.  Remove
25494
	`static' attribute.
25495
25496
	* kern/emu/getroot.c (find_root_device_from_libzfs): Split code for
25497
	finding zpool from mount point into ...
25498
	* kern/emu/misc.c (grub_find_zpool_from_mount_point): ... this.
25499
25500
	* kern/emu/misc.c (grub_make_system_path_relative_to_its_root): When
25501
	requested path is part of a ZFS pool, use
25502
	grub_find_zpool_from_mount_point() to detect its filesystem name,
25503
	and generate a path with `/fsname@path' syntax.
25504
25505
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
25506
25507
	* include/grub/util/libzfs.h (libzfs_init): Set argument list to
25508
	(void) rather than () so that this is a proper prototype.
25509
25510
2010-08-01  Vladimir Serbinenko  <phcoder@gmail.com>
25511
25512
	* lib/arg.c (grub_arg_show_help): Add the necessary spacing.
25513
25514
2010-08-01  Vladimir Serbinenko  <phcoder@gmail.com>
25515
25516
	* kern/emu/getroot.c (find_mount_point_from_dir): Compile only if
25517
	[HAVE_LIBZFS && HAVE_LIBNVPAIR]
25518
25519
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
25520
25521
	* util/grub-mkrescue.in: Remove ${efi_dir} after building efi.img.
25522
25523
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
25524
25525
	* script/yylex.l (NAME): Remove [:digit:], redundant with [:alnum:].
25526
25527
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
25528
25529
	* docs/grub.texi (Simple configuration): Document GRUB_CMDLINE_XEN
25530
	and GRUB_CMDLINE_XEN_DEFAULT.  Recommend setting
25531
	GRUB_GFXPAYLOAD_LINUX=text rather than unsetting it in order to
25532
	disable gfxpayload.
25533
	(Shell-like scripting): Add real content.
25534
	(Serial terminal): Suggest `terminal_input serial; terminal_output
25535
	serial' rather than putting the two commands on separate lines,
25536
	since console input will be inoperative after the first command.
25537
	(menuentry): Document --class, --users, and --hotkey options.
25538
	(terminfo): Describe what `visually-ordered UTF-8' means (thanks,
25539
	Vladimir Serbinenko).
25540
25541
2010-08-01  Vladimir Serbinenko  <phcoder@gmail.com>
25542
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
25543
25544
	* kern/misc.c (grub_memset): Optimise to reduce cache stalls.
25545
25546
2010-08-01  Robert Millan  <rmh@gnu.org>
25547
25548
	* include/grub/emu/misc.h (grub_find_mount_point_from_dir)
25549
	(grub_find_zpool_from_mount_point): New function prototypes.
25550
25551
	* kern/emu/getroot.c [HAVE_GETFSSTAT]: Move `<sys/mount.h>' to ...
25552
	* kern/emu/misc.c [HAVE_GETFSSTAT]: ... here.
25553
25554
	* kern/emu/getroot.c (find_mount_point_from_dir): Move to ...
25555
	* kern/emu/misc.c (grub_find_mount_point_from_dir): ... this.  Remove
25556
	`static' attribute.
25557
25558
	* kern/emu/getroot.c (find_root_device_from_libzfs): Split code for
25559
	finding zpool from mount point into ...
25560
	* kern/emu/misc.c (grub_find_zpool_from_mount_point): ... this.
25561
25562
	* kern/emu/misc.c (grub_make_system_path_relative_to_its_root): When
25563
	requested path is part of a ZFS pool, use
25564
	grub_find_zpool_from_mount_point() to detect its filesystem name,
25565
	and generate a path with `/fsname@path' syntax.
25566
25567
2010-08-01  Robert Millan  <rmh@gnu.org>
25568
25569
	Prevent accidental use of uninitialized libzfs_handle.
25570
25571
	* util/grub-probe.c (main): Move grub_util_init_libzfs() call to ...
25572
	* kern/emu/getroot.c (find_root_device_from_libzfs): ... here.
25573
	* util/misc.c (grub_util_init_libzfs): Make this function idempotent.
25574
25575
2010-08-01  Colin Watson  <cjwatson@ubuntu.com>
25576
25577
	* util/grub.d/20_linux_xen.in: Don't use UUID for LVM root (matching
25578
	util/grub.d/10_linux.in).  Fixes Debian bug #591093.
25579
25580
2010-08-01  Robert Millan  <rmh@gnu.org>
25581
25582
	* kern/emu/getroot.c: Include `<grub/util/misc.h>'.
25583
25584
2010-07-31  Robert Millan  <rmh@gnu.org>
25585
25586
	* util/grub.d/10_kfreebsd.in: Make module handling more generic.
25587
25588
2010-07-31  Robert Millan  <rmh@gnu.org>
25589
25590
	* kern/emu/misc.c: Add missing license header.
25591
25592
2010-07-31  Robert Millan  <rmh@gnu.org>
25593
25594
	* configure.ac: Check for `libzfs.h' and `libnvpair.h'.
25595
25596
	* include/grub/util/libnvpair.h: Include `<config.h>'.
25597
	[HAVE_LIBNVPAIR_H]: Include `<libnvpair.h>' instead of
25598
	declaring libnvpair prototypes ourselves.
25599
	* include/grub/util/libzfs.h: Include `<config.h>'.
25600
	[HAVE_LIBZFS_H]: Include `<libzfs.h>' instead of
25601
	declaring libzfs prototypes ourselves.
25602
25603
	(libzfs_handle): Moved to ...
25604
	* include/grub/util/misc.h (libzfs_handle): ... here.
25605
	Include `<grub/util/libzfs.h>'.
25606
25607
2010-07-30  Robert Millan  <rmh@gnu.org>
25608
25609
	* include/grub/emu/misc.h: Add missing license header.
25610
25611
2010-07-30  Robert Millan  <rmh@gnu.org>
25612
25613
	Enable `grub-probe -t device' resolution on ZFS.
25614
25615
	* configure.ac: Check for getfsstat(), libzfs and libnvpair.
25616
	* include/grub/util/libnvpair.h: New file.
25617
	* include/grub/util/libzfs.h: New file.
25618
25619
	* kern/emu/getroot.c: Include `<assert.h>' and `<error.h>'.
25620
	[HAVE_LIBZFS && HAVE_LIBNVPAIR]: Include `<grub/util/libzfs.h>' and
25621
	`<grub/util/libnvpair.h>'.
25622
	[HAVE_GETFSSTAT]: Include `<sys/mount.h>'.
25623
25624
	(find_mount_point_from_dir): New static function.
25625
	[HAVE_LIBZFS && HAVE_LIBNVPAIR] (find_root_device_from_libzfs): New
25626
	function.
25627
	[HAVE_LIBZFS && HAVE_LIBNVPAIR] (grub_guess_root_device): Use
25628
	find_root_device_from_libzfs() before ressorting to find_root_device().
25629
25630
	* include/grub/util/misc.h (grub_util_init_libzfs): New function
25631
	prototype.
25632
	* util/misc.c: Include `<grub/util/libzfs.h>'.
25633
	(grub_util_init_libzfs): New function.
25634
	[HAVE_LIBZFS] (libzfs_handle): New global variable.
25635
	[HAVE_LIBZFS] (fini_libzfs): New static function.
25636
	(grub_util_init_libzfs): New function.
25637
	* util/grub-probe.c (main): Call grub_util_init_libzfs().
25638
25639
2010-07-30  Robert Millan  <rmh@gnu.org>
25640
25641
	* include/grub/emu/misc.h (grub_make_system_path_relative_to_its_root)
25642
	(xmalloc, xrealloc, xstrdup, xasprintf): Add
25643
	`warn_unused_result' attribute.
25644
	* include/grub/misc.h (grub_strdup, grub_strndup, grub_strlen)
25645
	(grub_xasprintf, grub_xvasprintf): Likewise.
25646
	* include/grub/emu/misc.h (xasprintf): Remove duplicate prototype.
25647
25648
2010-07-29  Robert Millan  <rmh@gnu.org>
25649
25650
	* util/grub-probe.c (PRINT_FS_LABEL): New enum value.
25651
	(probe): Handle `PRINT_FS_LABEL'.
25652
	(main): Handle `-t fs_label'.
25653
25654
2010-07-29  Robert Millan  <rmh@gnu.org>
25655
25656
	* configure.ac: Remove grub-mkisofs checks.
25657
25658
2010-07-28  Vladimir Serbinenko  <phcoder@gmail.com>
25659
25660
	* util/ieee1275/grub-install.in: Don't use empty grub_device.
25661
	Reported by: Lennart Sorensen.
25662
25663
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
25664
25665
	* util/grub.d/00_header.in: Remove compatibility with terminal.mod
25666
	prior to terminal_input/terminal_output separation. It's been over 1.5
25667
	years and those versions weren't widely deployed.
25668
1.15.3 by Colin Watson
Import upstream version 1.98+20100722
25669
2010-07-22  Colin Watson  <cjwatson@ubuntu.com>
25670
25671
	* disk/raid.c (insert_array): Don't count named arrays when looking
25672
	for unused array numbers.
25673
	Reported and tested by: Michael Guntsche.
25674
1.15.2 by Colin Watson
Import upstream version 1.98+20100720
25675
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
25676
25677
	* bus/usb/emu/usb.c (grub_usb_poll_devices): Add a dummy
25678
	implementation of this so that grub-emu links again, with a note
25679
	that this should support hotplugging in the future.
25680
25681
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
25682
25683
	* kern/emu/getroot.c (grub_util_get_grub_dev): Use xasprintf.
25684
25685
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
25686
25687
	* disk/loopback.c (grub_cmd_loopback): Don't leak a grub_file_t
25688
	handle on failure.
25689
	(grub_loopback_close): Remove empty function.
25690
	(grub_loopback_dev): Remove close method.
25691
25692
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
25693
25694
	Disable EFI cursor when the EFI console becomes inactive.
25695
25696
	* term/efi/console.c (grub_efi_console_init): New function.
25697
	(grub_efi_console_fini): New function.
25698
	(grub_console_term_output): Register init and fini methods.
25699
25700
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
25701
25702
	* tests/util/grub-shell-tester.in: Remove bashism and declare as
25703
	sh script.
25704
25705
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
25706
25707
	* disk/loopback.c (grub_loopback): Replace filename with file.
25708
	(delete_loopback): Handle new semantics.
25709
	(grub_cmd_loopback): Likewise.
25710
	(grub_loopback_iterate): Likewise.
25711
	(grub_loopback_close): Likewise.
25712
25713
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
25714
25715
	* util/i386/efi/grub-install.in: Revert to platform-specific behaviour
25716
	with -p "".
25717
	Reported by: Tito Keitel.
25718
25719
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
25720
25721
	* docs/grub.texi (Naming convention): Document new naming convention.
25722
25723
2010-07-20  Vadim Solomin  <vadic052@gmail.com>
25724
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
25725
25726
	Generate device.map in something closer to the old ordering.
25727
25728
	* util/deviceiter.c (struct device): New declaration.
25729
	(compare_file_names): Rename to ...
25730
	(compare_devices): ... this.  Sort by kernel name in preference to
25731
	the stable by-id name, but keep the latter as a fallback comparison.
25732
	Update header comment.
25733
	(grub_util_iterate_devices) [__linux__]: Construct and sort an array
25734
	of `struct device' rather than of plain file names.
25735
25736
2010-07-20  Thomas Frauendorfer  <Thomas.Frauendorfer@googlemail.com>
25737
25738
	* lib/i386/relocator_asm.S [! __x86_64__]: Don't try to disable amd64
25739
	on i386.
25740
25741
2010-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
25742
25743
	* commands/acpi.c (setup_common_tables): Use sizeof instead of
25744
	hardcoding size.
25745
	(setv1table): Likewise.
25746
25747
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
25748
25749
	* disk/raid.c (insert_array): Use md/%s to name mdadm 1.x devices,
25750
	removing the homehost if present.
25751
	* kern/emu/getroot.c (get_mdadm_name) [__linux__]: New function.
25752
	(grub_util_get_grub_dev): Use md/%s to name mdadm 1.x devices,
25753
	removing the homehost if present.
25754
	(grub_util_get_grub_dev) [__linux__]: Get the array name from mdadm
25755
	if possible.
25756
	* util/i386/pc/grub-setup.c (main): Handle md/* devices.
25757
25758
	* disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Add start_sector
25759
	parameter.  Set its pointer target to 0.
25760
	* disk/mdraid_linux.c (grub_mdraid_detect): Add start_sector
25761
	parameter.  Set its pointer target to 0 for 0.9 metadata, or to the
25762
	`data_offset' value from the superblock for 1.x metadata.
25763
	* disk/raid.c (grub_raid_read): Offset reads by the start sector of
25764
	data on the device.
25765
	(insert_array): Record the start sector of data on the device.
25766
	(grub_raid_register): Pass start_sector parameters to
25767
	grub_raid_list->detect and insert_array.
25768
	* include/grub/raid.h (struct grub_raid_array): Add start_sector
25769
	member.
25770
	(struct grub_raid): Add start_sector parameter to `detect'.
25771
25772
	* disk/mdraid_linux.c (struct grub_raid_super_1x): Remove
25773
	__attribute__ ((packed)), leaving a comment.
25774
	(grub_mdraid_detect): Split out 0.9 and 1.x detection to ...
25775
	(grub_mdraid_detect_09): ... here and ...
25776
	(grub_mdraid_detect_1x): ... here.
25777
25778
2010-07-20  Peter Henn  <peter.henn@web.de>
25779
25780
	* disk/mdraid_linux.c (grub_mdraid_detect): Fix calculation of 1.x
25781
	chunk size and disk size, which are already given as sector counts
25782
	as distinct from the 0.90 units.  Fetch the correct device number
25783
	from the role table instead of using the table index.
25784
25785
2010-07-20  Felix Zielcke  <fzielcke@z-51.de>
25786
25787
	* disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Set array->name to NULL.
25788
	* disk/mdraid_linux.c (grub_raid_super_1x): New structure.
25789
	(WriteMostly1): New macro.
25790
	Set array->name to NULL for metadata format 0.90.  Add support for
25791
	metadata 1.x.  Fix some comments.
25792
	* disk/raid.c (): Add support for name based RAID arrays.  Fix a
25793
	few comments.
25794
	* util/getroot.c (grub_util_get_grub_dev): Add support for
25795
	/dev/md/name style devices.
25796
25797
2010-07-20  Colin Watson  <cjwatson@ubuntu.com>
25798
25799
	* .bzrignore: Ignore 20_linux_xen.
25800
25801
2010-07-17  Colin Watson  <cjwatson@ubuntu.com>
25802
25803
	* util/import_unicode.py: Remove unnecessary imports.
25804
25805
2010-07-17  Aleš Nesrsta <starous@volny.cz>
25806
25807
	Hotplugging and USB hub support.
25808
25809
	* bus/usb/ohci.c (grub_ohci_td): Add convenience fields.
25810
	(grub_ohci): Likewise.
25811
	(GRUB_OHCI_REG_CONTROL_BULK_ENABLE): New definition.
25812
	(GRUB_OHCI_REG_CONTROL_CONTROL_ENABLE): Likewise.
25813
	(GRUB_OHCI_RESET_CONNECT_CHANGE): Likewise.
25814
	(GRUB_OHCI_CTRL_EDS): Likewise.
25815
	(GRUB_OHCI_BULK_EDS): Likewise.
25816
	(GRUB_OHCI_TDS): Likewise.
25817
	(GRUB_OHCI_ED_ADDR_MASK): Likewise.
25818
	(grub_ohci_ed_phys2virt): New function.
25819
	(grub_ohci_virt_to_phys): Likewise.
25820
	(grub_ohci_td_phys2virt): Likewise.
25821
	(grub_ohci_td_virt2phys): Likewise.
25822
	(grub_ohci_pci_iter): Allocate memory and don't wait for stable
25823
	attachment.
25824
	(grub_ohci_find_ed): New function.
25825
	(grub_ohci_alloc_td): Likewise.
25826
	(grub_ohci_free_td): Likewise.
25827
	(grub_ohci_free_tds): Likewise.
25828
	(grub_ohci_transfer): Use previously allocated memory.
25829
	(grub_ohci_portstatus): Reset status changed bit.
25830
	(grub_ohci_detect_dev): Supply status changed.
25831
	(grub_ohci_fini_hw): Free memory.
25832
	(grub_ohci_restore_hw): Reallocate memory.
25833
	* bus/usb/uhci.c (grub_uhci_portstatus): Don't reset on disable.
25834
	Reset status change.
25835
	(grub_uhci_detect_dev): Supply status_change.
25836
	* bus/usb/usb.c (attach_hooks): New var.
25837
	(grub_usb_device_attach): New function.
25838
	(grub_usb_register_attach_hook_class): Likewise.
25839
	(grub_usb_unregister_attach_hook_class): Likewise.
25840
	* bus/usb/usbhub.c (grub_usb_hub_add_dev): Handle errors correctly.
25841
	(grub_usb_add_hub): Reset connection changed bit.
25842
	(attach_root_port): New function.
25843
	(grub_usb_root_hub): Likewise.
25844
	(poll_nonroot_hub): Likewise.
25845
	(grub_usb_poll_devices): Likewise.
25846
	* commands/usbtest.c (grub_cmd_usbtest): Poll devices before listing.
25847
	* disk/usbms.c (grub_usbms_open): Use device hooks.
25848
	(grub_usbms_iterate) :Poll devices.
25849
	(grub_usbms_finddevs): Split into ...
25850
	(grub_usbms_attach): ... this ...
25851
	(grub_usbms_attach): ... and this.
25852
	* include/grub/usb.h (grub_usb_controller_dev): Supply status_changed
25853
	in detect_dev.
25854
	(grub_usb_interface): New fields attached and detach_hook.
25855
	(grub_usb_attach_hook_class): New type.
25856
	(grub_usb_attach_desc): New struct.
25857
	(grub_usb_register_attach_hook_class): New function.
25858
	(grub_usb_unregister_attach_hook_class): Likewise.
25859
	(grub_usb_poll_devices): Likewise.
25860
	(grub_usb_device_attach): Likewise.
25861
	* include/grub/usbtrans.h (GRUB_USB_HUB_FEATURE_C_CONNECTED): New const.
25862
	(GRUB_USB_HUB_STATUS_C_CONNECTED): Likewise.
25863
25864
2010-07-17  Vladimir Serbinenko  <phcoder@gmail.com>
25865
25866
	* include/grub/bsdlabel.h (GRUB_PC_PARTITION_BSD_LABEL_WHOLE_DISK_PARTITION): New definition.
25867
	* partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Use FreeBSD
25868
	delta determination style. Works with most NetBSD partitions too.
25869
25870
2010-07-17  Vladimir Serbinenko  <phcoder@gmail.com>
25871
25872
	* kern/partition.c [GRUB_UTIL]: Add missing util/misc.h inclusion.
25873
	* partmap/bsdlabel.c [GRUB_UTIL]: Likewise.
25874
25875
2010-07-17  Vladimir Serbinenko  <phcoder@gmail.com>
25876
25877
	* disk/scsi.c (grub_scsi_open): Fix incorrect pointer dereference.
25878
25879
2010-07-14  Anton Blanchard  <anton@samba.org>
25880
25881
	* loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Do not reject
25882
	ET_DYN files.
25883
25884
2010-07-14  Grégoire Sutre  <gregoire.sutre@gmail.com>
25885
25886
	* Makefile.in: Use the substituted @USE_NLS@ instead of ENABLE_NLS.
25887
25888
2010-07-14  Grégoire Sutre  <gregoire.sutre@gmail.com>
25889
25890
	* kern/partition.c (grub_partition_check_containment): New function to
25891
	check that a partition is physically contained in a parent.  Since
25892
	offsets are relative (and non-negative), this reduces to checking that
25893
	the partition ends before its parent.
25894
	(grub_partition_map_probe): Discard out-of-range sub-partitions.
25895
	(grub_partition_iterate): Likewise.
25896
	* include/grub/partition.h (grub_partition_map): Slightly more detailed
25897
	comments.
25898
	* partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Discard
25899
	partitions that start before their parent, and add debug printfs.
25900
25901
2010-07-13  Colin Watson  <cjwatson@ubuntu.com>
25902
25903
	* Makefile.in (.SUFFIX): Spell correctly, as ...
25904
	(.SUFFIXES): ... this.  Fixes bug where `make foo' (where foo is a
25905
	bare module name without `.mod', e.g. `test') tried to invoke a
25906
	Modula-2 compiler.
25907
25908
2010-07-13  Colin Watson  <cjwatson@ubuntu.com>
25909
25910
	* README: Point to the Info manual.
25911
25912
2010-07-13  Jiro SEKIBA <jir@unicus.jp>
25913
25914
	* fs/nilfs2.c: fix macro NILFS_2ND_SUPER_BLOCK to calculate
25915
	2nd superblock position from partition size.
25916
1.15.1 by Colin Watson
Import upstream version 1.98+20100710
25917
2010-07-10  Colin Watson  <cjwatson@ubuntu.com>
25918
25919
	* Makefile.in (MAINTAINER_CLEANFILES): Remove
25920
	unicode/UnicodeData.txt, unicode/BidiMirroring.txt, and
25921
	unicode/ArabicShaping.txt again; these are inputs to autogen.sh, not
25922
	outputs.
25923
25924
2010-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
25925
25926
	Restructure SCSI .id handling.
25927
	Reported and tested by: Aleš Nesrsta.
25928
25929
	* disk/ata.c (grub_atapi_close): Removed. All users updated.
25930
	(grub_atapi_dev): Changed .name to "ata". New field .id.
25931
	* disk/usbms.c (grub_usbms_close): Removed. All users updated.
25932
	(grub_usbms_dev): New field .id.
25933
	* disk/scsi.c (grub_scsi_iterate): Generate name.
25934
	(grub_scsi_open): Parse name.
25935
	* include/grub/scsi.h (grub_make_scsi_id): New function.
25936
	(grub_scsi_dev): Change iterate and open to number instead of naming
25937
	busses. All users updated.
25938
	(grub_scsi): Remove name. Add .bus.
25939
25940
2010-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
25941
25942
	* commands/help.c (grub_cmd_help): Fix a typo.
25943
25944
2010-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
25945
25946
	* normal/term.c (put_glyphs_terminal): Fix state->num_lines counting.
25947
	Reported and tested by: Colin Watson.
25948
25949
2010-07-10  Vladimir Serbinenko  <phcoder@gmail.com>
25950
25951
	* util/grub-mkrescue.in: Don't use tar GNU-ism since it's not necessary
25952
	in this context.
25953
25954
2010-07-07  Vladimir Serbinenko  <phcoder@gmail.com>
25955
25956
	* tests/util/grub-shell.in: Remove bashisms and declare as sh script.
25957
25958
2010-07-07  Colin Watson  <cjwatson@ubuntu.com>
25959
25960
	* term/gfxterm.c (grub_gfxterm_background_image_cmd): Fix
25961
	indentation.
25962
25963
2010-07-06  Colin Watson  <cjwatson@ubuntu.com>
25964
25965
	* conf/common.rmk (grub_probe_SOURCES): Add disk/raid5_recover.c
25966
	and disk/raid6_recover.c.
25967
	* conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
25968
	* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
25969
25970
2010-07-06  Colin Watson  <cjwatson@ubuntu.com>
25971
25972
	* term/gfxterm.c (repaint_schedulded): Rename to ...
25973
	(repaint_scheduled): ... this.  Update all callers.
25974
	(repaint_was_schedulded): Rename to ...
25975
	(repaint_was_scheduled): ... this.  Update all callers.
25976
1.14.2 by Colin Watson
Import upstream version 1.98+20100706
25977
2010-07-06  Colin Watson  <cjwatson@ubuntu.com>
25978
25979
	* util/deviceiter.c (grub_util_iterate_devices): Skip MD devices,
25980
	which we expect to be handled by upper layers.
25981
25982
2010-07-06  BVK Chaitanya  <bvk.groups@gmail.com>
25983
25984
	* bus/usb/usbhub.c: #include time.h header.
25985
25986
2010-07-06  Colin Watson  <cjwatson@ubuntu.com>
25987
25988
	* fs/reiserfs.c (grub_reiserfs_iterate_dir): Zero out first byte of
25989
	entry_name also for entries without stat blocks (e.g. ".."); fixes
25990
	corruption of the first entry in a directory.
25991
25992
2010-07-06  Colin Watson  <cjwatson@ubuntu.com>
25993
25994
	* util/grub.d/00_header.in: Process GRUB_THEME and GRUB_BACKGROUND
25995
	after setting gfxterm as the active terminal.  GRUB_BACKGROUND
25996
	doesn't work otherwise.
25997
25998
2010-07-05  Colin Watson  <cjwatson@ubuntu.com>
25999
26000
	* docs/grub.texi (Features): Update list of supported file systems.
26001
	(GNU/Linux): Update for GRUB 2.
26002
	(Serial terminal): Remove mention of --disable-serial, which was a
26003
	GRUB Legacy configure option.  Update instructions to use
26004
	`terminal_input' and `terminal_output' rather than `terminal'.
26005
	(Vendor power-on keys): Copy-edit.  Add cross-references to `Simple
26006
	configuration' and `Installing GRUB using grub-install'.
26007
	(Menu entry editor): Update for GRUB 2.
26008
	(terminfo): Add vt100-color, ieee1275, and dumb terminal types.
26009
	Document new -a, -u, and -v options.
26010
	(initrd): New section.
26011
	(initrd16): New section.
26012
	(linux): New section.
26013
	(linux16): New section.
26014
	(search): The `var' argument to `--set' is optional.
26015
	(GRUB only offers a rescue shell): Go into a little more detail on
26016
	drive ordering.
26017
26018
2010-07-05  Colin Watson  <cjwatson@ubuntu.com>
26019
26020
	* Makefile.in: Set LINGUAS to empty if ENABLE_NLS is undefined.
26021
1.14.1 by Colin Watson
Import upstream version 1.98+20100705
26022
2010-07-05  Colin Watson  <cjwatson@ubuntu.com>
26023
26024
	* Makefile.in (MAINTAINER_CLEANFILES): Add unicode/UnicodeData.txt,
26025
	unicode/BidiMirroring.txt, unicode/ArabicShaping.txt, and unidata.c.
26026
26027
2010-07-05  Colin Watson  <cjwatson@ubuntu.com>
26028
26029
	* util/i386/pc/grub-setup.c (setup): Rename prefix to
26030
	install_prefix, in line with install_dos_part and install_bsd_part.
26031
	Add new prefix variable, which is copied to install_prefix after
26032
	comparing core.img in memory with the one read from disk in the
26033
	no-embedding case, and use that rather than overwriting
26034
	install_prefix immediately when installing to a partition.
26035
	Fixes Debian bug #586621; based on patches by Matt Kraai and M. Vefa
26036
	Bicakci.
26037
26038
2010-07-04  Grégoire Sutre  <gregoire.sutre@gmail.com>
26039
26040
	* configure.ac: Avoid == in test command, it's not portable.
26041
	* util/grub.d/30_os-prober.in: Likewise.
26042
26043
2010-07-04  Colin Watson  <cjwatson@ubuntu.com>
26044
26045
	* kern/emu/getroot.c [__GNU__]: Include <sys/mman.h> for munmap.
26046
26047
2010-07-04  Grégoire Sutre  <gregoire.sutre@gmail.com>
26048
26049
	* util/i386/pc/grub-setup.c (setup): Do not embed when there are
26050
	multiple (top-level) partmaps.
26051
26052
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
26053
26054
	* util/i386/efi/grub-install.in: Don't use empty grub_device.
26055
	Reported by: Tino Keitel.
26056
26057
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
26058
26059
	Bidi and diacritics support.
26060
26061
	* Makefile.in (widthspec.bin): New target.
26062
	(widthspec.h): Likewise.
26063
	(TARGET_CFLAGS): Add -DHAVE_UNIFONT_WIDTHSPEC=1 if font was available.
26064
	* autogen.sh: Generate unidata.c.
26065
	* commands/cat.c (grub_cmd_cat): Don't use grub_putchar.
26066
	* commands/ls.c (grub_ls_list_devices): Likewise.
26067
	(grub_ls_list_files): Likewise.
26068
	* commands/minicmd.c (grub_mini_cmd_cat): Likewise.
26069
	(grub_mini_cmd_lsmod): Likewise.
26070
	* commands/read.c: Likewise.
26071
	* kern/corecmd.c (grub_core_cmd_ls): Likewise.
26072
	* kern/rescue_reader.c (grub_rescue_read_line): Likewise.
26073
	* lib/arg.c (grub_arg_show_help): Likewise.
26074
	* lib/crypto.c (grub_password_get): Likewise.
26075
	* normal/auth.c (grub_username_get): Likewise.
26076
	* normal/misc.c (grub_normal_print_device_info): Likewise.
26077
	* commands/help.c (grub_cmd_help): Use grub_unicode_aglomerate_comb.
26078
	* conf/common.rmk (grub_mkfont_SOURCES): Add unidata.c.
26079
	(gfxmenu_mod_SOURCES): Add gfxmenu/font.c.
26080
	(normal/charset.c_DEPENDENCIES): New variable.
26081
	(normal_mod_SOURCES): Add normal/charset.c and unidata.c.
26082
	(pkglib_MODULES): Remove charset.mod.
26083
	(charset_mod_SOURCES): Removed.
26084
	(charset_mod_CFLAGS): Likewise.
26085
	(charset_mod_LDFLAGS): Likewise.
26086
	(pkglib_MODULES) [ieee1275]: Remove terminfo.mod.
26087
	* conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Add term/terminfo.c
26088
	and term/tparm.c.
26089
	* conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise.
26090
	* conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise.
26091
	(kernel_img_HEADERS): Add terminfo.h.
26092
	* font/font.c (ascii_glyph_lookup): Return NULL on failure.
26093
	Fill ->font. Reverse ascii bitmaps.
26094
	(grub_font_get_xheight): New function.
26095
	* font/font.c (grub_font_get_string_width): Moved from here ...
26096
	* gfxmenu/font.c (grub_font_get_string_width): ... here.
26097
	* font/font.c (grub_font_draw_string): Moved from here ...
26098
	* gfxmenu/font.c (grub_font_draw_string): ... here.
26099
	* font/font.c (grub_font_dup_glyph): New function.
26100
	(grub_font_blit_glyph): Likewise.
26101
	(grub_font_blit_glyph_mirror): Likewise.
26102
	(blit_comb): Likewise.
26103
	(grub_font_construct_dry_run): Likewise.
26104
	(grub_font_get_constructed_device_width): Likewise.
26105
	(grub_font_construct_glyph): Likewise.
26106
	* include/grub/charset.h (grub_ucs4_to_utf8): New proto.
26107
	* include/grub/misc.h (grub_utf8_to_ucs4): Moved from here ...
26108
	* include/grub/charset.h (grub_utf8_to_ucs4): ... here.
26109
	* include/grub/font.h (GRUB_FONT_CODE_CHAR_MASK): New constant.
26110
	(GRUB_FONT_CODE_RIGHT_JOINED): Likewise.
26111
	(GRUB_FONT_CODE_LEFT_JOINED): Likewise.
26112
	(grub_font_get_xheight): New proto.
26113
	(grub_font_get_constructed_device_width): Likewise.
26114
	(grub_font_construct_glyph): Likewise.
26115
	* include/grub/font.h (grub_font_get_string_width): Moved from here ...
26116
	* include/grub/gfxmenu_view.h (grub_font_get_string_width): ... here.
26117
	* include/grub/font.h (grub_font_draw_string): Moved from here ...
26118
	* include/grub/gfxmenu_view.h (grub_font_draw_string): ... here.
26119
	* include/grub/i386/vga_common.h (grub_console_putchar): Moved from here..
26120
	* include/grub/i386/pc/console.h (grub_console_putchar): ... here.
26121
	* include/grub/i386/vga_common.h (grub_console_real_putchar): Removed.
26122
	(grub_console_getcharwidth): Likewise.
26123
	* include/grub/misc.h (grub_xputs): New proto.
26124
	(grub_puts): Inlined.
26125
	* include/grub/normal.h (grub_print_ucs4): Add margin specification.
26126
	(grub_normal_get_line_counter): Removed.
26127
	(grub_install_newline_hook): Likewise.
26128
	(grub_normal_get_char_counter): New proto.
26129
	(grub_normal_reset_more): Likewise.
26130
	(grub_xputs_normal): Likewise.
26131
	* include/grub/powerpc/ieee1275/console.h: Removed.
26132
	* include/grub/sparc64/ieee1275/console.h: Likewise.
26133
	* include/grub/term.h (GRUB_TERM_CODE_TYPE_MASK): New definition.
26134
	(GRUB_TERM_CODE_TYPE_ASCII): Likewise.
26135
	(GRUB_TERM_CODE_TYPE_CP437): Likewise.
26136
	(GRUB_TERM_CODE_TYPE_UTF8_LOGICAL): Likewise.
26137
	(GRUB_TERM_CODE_TYPE_UTF8_VISUAL): Likewise.
26138
	(GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS): Likewise.
26139
	(grub_term_input): Pass reference to self. All users updated.
26140
	(grub_term_output): Pass grub_unicode_glyph to putchar and getcharwidth.
26141
	Pass reference to self. New fields normal_color, highlight_color and
26142
	data. All users updated.
26143
	(grub_putchar): Removed.
26144
	(grub_putcode): Remove EXPORT_FUNC since it's not in kernel anymore.
26145
	(grub_unicode_estimate_width): New function.
26146
	(grub_term_getcharwidth): Add defaults.
26147
	(GRUB_TERM_DEFAULT_NORMAL_COLOR): New definition.
26148
	(GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR): Likewise.
26149
	(GRUB_TERM_DEFAULT_STANDARD_COLOR): Likewise.
26150
	(grub_cls): Remove EXPORT_FUNC.
26151
	(grub_setcolorstate): Inline.
26152
	(grub_newline_hook): Removed.
26153
	* include/grub/terminfo.h: Rewritten. All users updated.
26154
	* include/grub/unicode.h: New file.
26155
	* include/grub/video.h (grub_video_signed_rect): New type.
26156
	* kern/emu/console.c (grub_console_highlight_color): Removed.
26157
	(grub_console_normal_color): Likewise.
26158
	(grub_console_standard_color): Made static.
26159
	(grub_ncurses_putchar): Remove mapping.
26160
	(grub_ncurses_getcharwidth): Removed.
26161
	(grub_ncurses_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII.
26162
	(grub_ncurses_setcolor): Removed.
26163
	(grub_ncurses_getcolor): Likewise.
26164
	* kern/i386/pc/startup.S (grub_console_real_putchar): Renamed to ...
26165
	(grub_console_putchar): ... this.
26166
	(grub_console_putchar): Handle argument difference.
26167
	* kern/ieee1275/init.c (grub_machine_init): Split console_init into
26168
	console_init_early and console_init_lately.
26169
	* kern/sparc64/ieee1275/init.c (grub_machine_init): Likewise.
26170
	* kern/misc.c (grub_puts): Removed.
26171
	(grub_vprintf): Store UTF-8 string instead of outputting it directly.
26172
	(grub_vsnprintf_real): Remove str = NULL support.
26173
	* kern/misc.c (grub_utf8_to_ucs4): Move from here ...
26174
	* normal/charset.c (grub_utf8_to_ucs4): ... here.
26175
	* kern/term.c (grub_putcode): Renamed to ...
26176
	(grub_putcode_dumb): ... this. Pass grub_unicode_glyph instead of code.
26177
	(grub_putchar): Removed.
26178
	(grub_xputs_dumb): New function.
26179
	(grub_xputs): New variable.
26180
	* lib/charset.c: Move from here ...
26181
	* normal/charset.c: ... to here.
26182
	(grub_ucs4_to_utf8): New function.
26183
	(grub_ucs4_to_utf8_alloc): Use grub_ucs4_to_utf8.
26184
	(join_types): New variable.
26185
	(unpack_join): New function.
26186
	(bidi_types): New variable.
26187
	(unpack_bidi): New function.
26188
	(get_bidi_type): Likewise.
26189
	(get_join_type): Likewise.
26190
	(is_mirrored): Likewise.
26191
	(grub_unicode_get_comb_type): Likewise.
26192
	(grub_unicode_estimate_width) [HAVE_UNIFONT_WIDTHSPEC]: Likewise.
26193
	(is_type_after): Likewise.
26194
	(grub_unicode_aglomerate_comb): Likewise.
26195
	(bidi_line_wrap): Likewise.
26196
	(grub_bidi_line_logical_to_visual): Likewise.
26197
	(grub_bidi_logical_to_visual): Likewise.
26198
	(grub_unicode_mirror_code): Likewise.
26199
	(grub_unicode_shape_code): Likewise.
26200
	* normal/cmdline.c (grub_cmdline_get): Reset more counter.
26201
	Don't use grub_putchar.
26202
	* normal/main.c (grub_normal_init_page): Use grub_putcode.
26203
	(grub_normal_reader_init): Likewise.
26204
	(grub_xputs_saved): New variable.
26205
	(GRUB_MOD_INIT): Set grub_xputs.
26206
	(GRUB_MOD_FINI): Restore grub_xputs.
26207
	* normal/menu.c (grub_wait_after_message): Don't use grub_putchar.
26208
	(menu_init): Avoid printing gfxmenu error.
26209
	(show_menu): Use grub_normal_get_char_counter.
26210
	* normal/menu_entry.c (update_screen): Fix out-of-array.
26211
	(complete): Avoid NULL dereferencing.
26212
	* grub_menu_entry_run (grub_menu_entry_run): Don't use putchar.
26213
	* normal/menu_text.c (print_spaces): Removed.
26214
	(grub_print_ucs4): Likewise.
26215
	(grub_print_message_indented): Use grub_print_ucs4.
26216
	(print_message): Use grub_putcode.
26217
	(print_entry): Hanlde diacritics.
26218
	* normal/term.c (term_state): New type.
26219
	(grub_more_lines): Removed.
26220
	(term_states): New variable.
26221
	(grub_normal_line_counter): Renamed to ..
26222
	(grub_normal_char_counter): ...this. All users updated.
26223
	(grub_normal_get_line_counter): Renamed to ...
26224
	(grub_normal_get_char_counter): ... this.
26225
	(grub_normal_reset_more): New function.
26226
	(process_newline): Removed.
26227
	(print_more): New function.
26228
	(grub_install_newline_hook): Removed.
26229
	(map_code): New function.
26230
	(grub_puts_terminal): Use grub_print_ucs4.
26231
	(putglyph): New function.
26232
	(putcode_real): Likewise.
26233
	(grub_putcode): Use putcode_real.
26234
	(get_maxwidth): New function.
26235
	(get_startwidth): Likewise.
26236
	(print_ucs4_terminal): Likewise.
26237
	(find_term_state): Likewise.
26238
	(put_glyphs_terminal): Likewise.
26239
	(print_backlog): Likewise.
26240
	(print_ucs4_real): Likewise.
26241
	(grub_print_ucs4): Likewise.
26242
	(grub_xputs_normal): Likewise.
26243
	* term/efi/console.c (grub_console_putchar): Output diacritics.
26244
	(grub_console_getcharwidth): Removed.
26245
	(grub_console_term_output): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL.
26246
	* term/gfxterm.c (clear_char): Free chars.
26247
	(scroll_up): Avoid leaking memory.
26248
	(grub_gfxterm_putchar): Support diacritics.
26249
	(grub_video_term): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL.
26250
	* term/i386/pc/console.c (grub_console_term_output): Declare as
26251
	GRUB_TERM_CODE_TYPE_VGA.
26252
	* term/i386/pc/vga.c (grub_vga_term): Declare as
26253
	GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS.
26254
	* term/i386/pc/vga_text.c (grub_vga_text_term): Declare as
26255
	GRUB_TERM_CODE_TYPE_VGA.
26256
	* term/i386/vga_common.c (map_char): Removed.
26257
	(grub_console_putchar): Likewise.
26258
	(grub_console_getcharwidth): Likewise.
26259
	* term/ieee1275/ofconsole.c: Simplify using terminfo.
26260
	(colors): Reordered to match terminfo.
26261
	(grub_ofconsole_normal_color): Removed.
26262
	(grub_ofconsole_writeesc): Likewise.
26263
	(grub_ofconsole_highlight_color): Likewise.
26264
	(grub_ofconsole_getcharwidth): Likewise.
26265
	(grub_ofconsole_setcolorstate): Likewise.
26266
	(grub_ofconsole_setcolor): Likewise.
26267
	(grub_ofconsole_getcolor): Likewise.
26268
	(grub_ofconsole_readkey): Renamed to ...
26269
	(readkey): ... this. Remove escape sequence handling. Return -1 on no
26270
	key.
26271
	(grub_ofconsole_checkkey): Removed.
26272
	(grub_ofconsole_getkey): Likewise.
26273
	(grub_ofconsole_getxy): Likewise.
26274
	(grub_ofconsole_gotoxy): Likewise.
26275
	(grub_ofconsole_cls): Likewise.
26276
	(grub_ofconsole_refresh): Likewise.
26277
	(grub_ofconsole_terminfo_input): New struct.
26278
	(grub_ofconsole_terminfo_output): Likewise.
26279
	(grub_ofconsole_term_input): Use terminfo.
26280
	(grub_ofconsole_term_output): Likewise.
26281
	(grub_console_init): Split into ...
26282
	(grub_console_init_early): ...this and ...
26283
	(grub_console_init_lately): ...this. Use terminfo.
26284
	(grub_ofconsole_putchar): Renamed to ...
26285
	(put): ... this. Remove mapping.
26286
	(grub_ofconsole_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII.
26287
	* term/serial.c: Simplify using terminfo.
26288
	(xpos): Removed.
26289
	(ypos): Likewise.
26290
	(keep_track): Likewise.
26291
	(registered): Likewise.
26292
	(input_buf): Likewise.
26293
	(npending): Likewise.
26294
	(serial_translate_key_sequence): Likewise.
26295
	(fill_input_buf): Likewise.
26296
	(grub_serial_checkkey): Likewise.
26297
	(grub_serial_getkey): Likewise.
26298
	(grub_serial_getxy): Likewise.
26299
	(grub_serial_gotoxy): Likewise.
26300
	(grub_serial_putchar): Likewise.
26301
	(grub_serial_cls): Likewise.
26302
	(grub_serial_setcolorstate): Likewise.
26303
	(grub_serial_setcursor): Likewise.
26304
	(serial_hw_init): Use serial_hw_fetch.
26305
	(grub_serial_terminfo_input): New variable.
26306
	(grub_serial_terminfo_output): Likewise.
26307
	(grub_serial_term_input): Use terminfo.
26308
	(grub_serial_term_output): Likewise.
26309
	* term/terminfo.c (putstr): Use put.
26310
	(grub_terminfo_all_free): New function
26311
	(grub_terminfo_set_current): New types vt100-color, ieee1275 and dumb.
26312
	(grub_terminfo_output_register): New function.
26313
	(grub_terminfo_output_unregister): Likewise.
26314
	(grub_terminfo_getxy): Likewise.
26315
	(grub_terminfo_readkey): Likewise.
26316
	(grub_terminfo_checkkey): Likewise.
26317
	(grub_terminfo_getkey): Likewise.
26318
	(grub_terminfo_input_init): Likewise.
26319
	(print_terminfo): Likewise.
26320
	(grub_cmd_terminfo): Handle encoding.
26321
	(grub_terminfo_gotoxy): Track position.
26322
	(grub_terminfo_cls): Likewise.
26323
	(grub_terminfo_putchar): Likewise.
26324
	(grub_terminfo_setcolorstate): Handle colors
26325
	(grub_terminfo_cursor_on): This ...
26326
	(grub_terminfo_cursor_off): ... and this merged into ...
26327
	(grub_terminfo_setcursor): ... this.
26328
	* term/tparm.c (grub_terminfo_tparm): Avoid NULL dereferencing.
26329
	* unicode/ArabicShaping.txt: New file (imported from Unicode).
26330
	* unicode/BidiMirroring.txt: Likewise.
26331
	* unicode/UnicodeData.txt: Likewise.
26332
	* unicode/COPYING: Likewise.
26333
	* util/grub-editenv.c (grub_putchar): Removed.
26334
	(grub_xputs_real): New function.
26335
	(grub_xputs): New variable.
26336
	* util/grub-fstest.c (grub_putchar): Removed.
26337
	(grub_xputs_real): New function.
26338
	(grub_xputs): New variable.
26339
	* util/grub-mkdevicemap.c (grub_putchar): Removed.
26340
	(grub_xputs_real): New function.
26341
	(grub_xputs): New variable.
26342
	* util/grub-probe.c (grub_putchar): Removed.
26343
	(grub_xputs_real): New function.
26344
	(grub_xputs): New variable.
26345
	* util/grub-script-check.c (grub_putchar): Removed.
26346
	(grub_xputs_real): New function.
26347
	(grub_xputs): New variable.
26348
	* util/i386/pc/grub-setup.c (grub_putchar): Removed.
26349
	(grub_xputs_real): New function.
26350
	(grub_xputs): New variable.
26351
	* util/import_unicode.py: New file.
26352
	* util/grub-mkfont.c (ft_errmsgs): New array.
26353
	(grub_glyph_info): Make bitmap a pointer.
26354
	(file_formats): New type WIDTH_SPEC.
26355
	(grub_font_info): New members glyphs_unsorted, glyphs_sorted, num_glyphs.
26356
	(options): Add width-spec.
26357
	(help): Likewise.
26358
	(add_char): Renamed to ...
26359
	(add_glyph): ... this.
26360
	(add_glyph): Use index. Show freetype errors. Cut blank space at borders.
26361
	(glyph_replace): New type.
26362
	(subst_rightjoin), (subst_leftjoin), (subst_medijoin): New variables.
26363
	(add_char): New function.
26364
	(add_subst): Likewise.
26365
	(process_cursive): Likewise.
26366
	(add_font): Handle GSUB.
26367
	(write_font_width_spec): New function.
26368
	(main): Sort glyphs.
26369
	* commands/minicmd.c (grub_mini_cmd_clear): Moved from here ...
26370
	* normal/main.c (grub_mini_cmd_clear): ..here. All users updated.
26371
	* kern/term.c (grub_cls): Moved from here...
26372
	* normal/term.c (grub_cls): ... here.
26373
26374
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
26375
26376
	* include/grub/types.h: Define the C99-style PRIxGRUB_SIZE macro,
26377
	suitable for using within the format argument of printf when
26378
	converting grub_size_t.
26379
	* disk/usbms.c (grub_usbms_transfer): Use PRIxGRUB_SIZE rather than
26380
	"x" to convert grub_size_t arguments.
26381
1.13.15 by Colin Watson
Import upstream version 1.98+20100702
26382
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
26383
26384
	* gfxmenu/gui_list.c (draw_menu): Use viewport to simplify code and fix
26385
	too long captions.
26386
	(list_get_minimal_size): Take selection box into account.
26387
26388
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
26389
26390
	* font/font.c (grub_font_get_glyph_with_fallback): Avoid dereferencing
26391
	NULL font.
26392
26393
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
26394
26395
	* util/deviceiter.c (grub_util_iterate_devices): Skip device-mapper
26396
	devices when iterating over /dev/disk/by-id; they will be handled
26397
	later if appropriate, which they aren't always (e.g. LVM).
26398
26399
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
26400
26401
	* include/grub/misc.h (grub_reboot): Declare as noreturn.
26402
	* kern/efi/efi.c (grub_reboot): Don't return, even if reset_system
26403
	fails.
26404
	(grub_halt): Likewise.
26405
	* kern/ieee1275/openfw.c (grub_reboot): Don't return, even if
26406
	reset-all fails.
26407
	(grub_halt): Don't return, even if all of shut-down, power-off, and
26408
	poweroff fail.
26409
26410
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
26411
26412
	* kern/efi/init.c (grub_efi_init): set_watchdog_timer takes four
26413
	arguments, not three.
26414
26415
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
26416
26417
	* util/grub-mkconfig_lib.in (uses_abstraction): New function.
26418
	* util/grub.d/10_linux.in: Use it to check for LVM, so that
26419
	LVM-on-RAID is handled correctly.
26420
26421
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
26422
26423
	* docs/grub.texi (Changes from GRUB Legacy): New section.
26424
	(Future): Fix typo.
26425
26426
2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
26427
26428
	* util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Sometimes
26429
	grub.d/README accidentally ends up executable for one reason or
26430
	another.  Ignore it.
26431
26432
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
26433
26434
	* partmap/gpt.c (MAX_SECTOR_LOG): New definition.
26435
	(gpt_partition_map_iterate): Support non-512B sectors.
26436
26437
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
26438
26439
	* kern/efi/init.c (grub_efi_init): Disable watchdog.
26440
	Tested by: Seth Goldberg.
26441
26442
2010-07-02  Vladimir Serbinenko  <phcoder@gmail.com>
26443
26444
	* loader/multiboot.c (grub_multiboot_boot) [GRUB_USE_MULTIBOOT2]:
26445
	Properly align mbi.
26446
	Reported by: Seth Goldberg.
26447
26448
2010-07-01  Vladimir Serbinenko  <phcoder@gmail.com>
26449
26450
	* util/grub-mkrescue.in: Avoid module duplication.
26451
26452
2010-07-01  Sean Finney  <seanius@seanius.net>
26453
26454
	* util/grub.d/10_linux.in: Don't use UUID for LVM root.
26455
26456
2010-07-01  Sean Finney  <seanius@seanius.net>
26457
26458
	* disk/lvm.c (grub_lvm_scan_device): Skip snapshots.
26459
26460
2010-07-01  Vladimir Serbinenko  <phcoder@gmail.com>
26461
26462
	* disk/lvm.c (grub_lvm_checkvalue): New function.
26463
	(grub_lvm_check_flag): Likewise.
26464
26465
2010-07-01  Robert Millan  <rmh@gnu.org>
26466
26467
	* kern/emu/hostdisk.c (convert_system_partition_to_system_disk):
26468
	Support 'p' as partition separator on kernel of FreeBSD (used
26469
	with GPT labels).
26470
	(grub_util_biosdisk_get_grub_dev): Likewise.
26471
26472
2010-07-01  Vladimir Serbinenko  <phcoder@gmail.com>
26473
26474
	Yeeloong firmware port.
26475
26476
	* boot/mips/yeeloong/fwstart.S: New file.
26477
	* bus/cs5536.c (gpiodump): New const.
26478
	(set_io_space): New function.
26479
	(set_iod): Likewise.
26480
	(set_p2d): Likewise.
26481
	(grub_cs5536_init_geode): Likewise.
26482
	* commands/mips/yeeloong/lsspd.c: New file.
26483
	* conf/mips-qemu-mips.rmk (pkglib_MODULES): Add serial.mod.
26484
	(serial_mod_SOURCES): New variable.
26485
	(serial_mod_CFLAGS): Likewise.
26486
	(serial_mod_LDFLAGS): Likewise.
26487
	* conf/mips-yeeloong.rmk (kernel_img_SOURCES): Add term/serial.c,
26488
	term/terminfo.c and term/tparm.c.
26489
	(pkglib_IMAGES): Add fwstart.img.
26490
	(fwstart_img_SOURCES): New variable.
26491
	(fwstart_img_CFLAGS): Likewise.
26492
	(fwstart_img_ASFLAGS): Likewise.
26493
	(fwstart_img_LDFLAGS): Likewise.
26494
	(fwstart_img_FORMAT): Likewise.
26495
	(pkglib_MODULES): Add lsspd.mod.
26496
	(lsspd_mod_SOURCES): New variable.
26497
	(lsspd_mod_CFLAGS): Likewise.
26498
	(lsspd_mod_LDFLAGS): Likewise.
26499
	(pkglib_MODULES): Add halt.mod.
26500
	(halt_mod_SOURCES): New variable.
26501
	(halt_mod_CFLAGS): Likewise.
26502
	(halt_mod_LDFLAGS): Likewise.
26503
	* conf/mips.rmk (pkglib_MODULES): Remove serial.mod.
26504
	(serial_mod_SOURCES): Removed.
26505
	(serial_mod_CFLAGS): Likewise.
26506
	(serial_mod_LDFLAGS): Likewise.
26507
	* disk/ata.c (check_device): New function.
26508
	(grub_ata_device_initialize): Use check_device.
26509
	(grub_ata_iterate): Recheck devices.
26510
	(grub_ata_open): Likewise.
26511
	(grub_atapi_iterate): Likewise.
26512
	(grub_atapi_open): Likewise.
26513
	* include/grub/ata.h (GRUB_ATA_CH0_PORT1): New macro.
26514
	(GRUB_ATA_CH1_PORT1): Likewise.
26515
	(GRUB_ATA_CH0_PORT2): Likewise.
26516
	(GRUB_ATA_CH1_PORT2): Likewise.
26517
	* include/grub/mips/loongson.h: New file.
26518
	* include/grub/mips/yeeloong/ec.h: Likewise.
26519
	* include/grub/mips/yeeloong/serial.h (GRUB_MACHINE_SERIAL_PORT): New definition.
26520
	(GRUB_MACHINE_SERIAL_DIVISOR_115200): Likewise.
26521
	(GRUB_MACHINE_SERIAL_PORTS) [ASM_FILE]: Remove.
26522
	* include/grub/misc.h (grub_halt): Declare as noreturn.
26523
	* include/grub/serial.h (UART_ENABLE_FIFO): Renamed to ...
26524
	(UART_ENABLE_FIFO_TRIGGER14): ... this. All users updated.
26525
	(UART_ENABLE_FIFO_TRIGGER1): New definition.
26526
	(UART_ENABLE_DTRRTS): Likewise.
26527
	(UART_ENABLE_MODEM): Removed.
26528
	(UART_ENABLE_OUT2): New const.
26529
	* include/grub/term.h (grub_term_register_input_active): New function.
26530
	(grub_term_register_output_active): Likewise.
26531
	* kern/mips/startup.S [GRUB_MACHINE_MIPS_YEELOONG]: Handle 0xffffffff
26532
	argument.
26533
	* kern/mips/yeeloong/init.c (grub_get_rtc): Macroify.
26534
	(init_pci): New function.
26535
	(grub_machine_init): Execute platform init when firmware. Init serial.
26536
	(grub_halt): Implement.
26537
	(grub_exit): Likewise.
26538
	(grub_reboot): Likewise.
26539
	* term/serial.c (serial_hw_init): Update macros.
26540
	[GRUB_MACHINE_MIPS_YEELOONG]: Init on startup.
26541
	* util/grub-mkimage.c (image_target_desc): New id IMAGE_YEELOONG_FLASH.
26542
	(image_targets): New target mipsel-yeeloong-flash.
26543
	(generate_image): Support IMAGE_YEELOONG_FLASH.
26544
	* video/sm712.c (GRUB_SM712_TOTAL_MEMORY_SPACE): New definition.
26545
	(grub_video_sm712_setup): Init card.
26546
	(grub_video_sm712_set_palette): Removed.
26547
	* video/sm712_init.c: New file.
26548
26549
2010-06-30  Colin Watson  <cjwatson@ubuntu.com>
26550
26551
	* Makefile.in (install-local): Temporarily prepend $(builddir) to
26552
	PATH when running help2man and then run it on the unadorned
26553
	executable names, rather than passing $(builddir)/* paths to
26554
	help2man.  This avoids the build directory ending up in generated
26555
	manual pages.
26556
26557
2010-06-29  Colin Watson  <cjwatson@ubuntu.com>
26558
26559
	* util/grub-mkconfig.in: Use 'set -e' rather than '#! /bin/sh -e',
26560
	to avoid accidents when debugging with 'sh -x'.
26561
	* util/grub-mkrescue.in: Likewise.
26562
	* util/grub.d/00_header.in: Likewise.
26563
	* util/grub.d/10_hurd.in: Likewise.
26564
	* util/grub.d/10_kfreebsd.in: Likewise.
26565
	* util/grub.d/10_linux.in: Likewise.
26566
	* util/grub.d/10_netbsd.in: Likewise.
26567
	* util/grub.d/10_windows.in: Likewise.
26568
	* util/grub.d/20_linux_xen.in: Likewise.
26569
	* util/grub.d/30_os-prober.in: Likewise.
26570
	* util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
26571
26572
2010-06-29  Colin Watson  <cjwatson@ubuntu.com>
26573
26574
	* commands/cat.c (grub_cmd_cat): Fix buffer overrun if '\r' is the
26575
	last character in the buffer.
26576
	Reported by: Vladimir Serbinenko.
26577
26578
2010-06-29  Robert Millan  <rmh@gnu.org>
26579
26580
	* docs/grub.texi (Simple configuration): Document ${GRUB_BADRAM}.
26581
	(Command-line and menu entry commands): Document `badram' command.
26582
26583
2010-06-28  Robert Millan  <rmh@gnu.org>
26584
26585
	* util/grub-mkconfig.in: Export `GRUB_BADRAM' variable.
26586
	* util/grub.d/00_header.in: When `GRUB_BADRAM' is set, issue badram
26587
	command using ${GRUB_BADRAM} as parameter.
26588
26589
2010-06-28  Colin Watson  <cjwatson@ubuntu.com>
26590
26591
	* docs/grub.texi (Device map): New section.
26592
	(Themes): New section (stub).
26593
	* Makefile.in (docs/grub.info): The info documentation now builds
26594
	without errors.  Make sure it stays that way.
26595
26596
2010-06-28  Vladimir Serbinenko  <phcoder@gmail.com>
26597
26598
	Use normal parser for menu entries.
26599
	Reported by: Thomas Frauendorfer
26600
26601
	* include/grub/parser.h (grub_parser_execute): Don't export.
26602
	* normal/menu.c (grub_menu_execute_entry_real): New function.
26603
	(grub_menu_execute_entry): Use grub_menu_execute_entry_real.
26604
26605
2010-06-28  Colin Watson  <cjwatson@ubuntu.com>
26606
26607
	* docs/grub.texi (Embedded configuration): New section (replacing
26608
	old "Preset Menu" stub).
26609
	(Images): New section.
26610
	(configfile): Note that any menu entries defined in `file' are shown
26611
	immediately.
26612
26613
2010-06-28  Josh Triplett  <josh@joshtriplett.org>
26614
26615
	* mmap/i386/pc/mmap_helper.S: Set CF on return.
26616
26617
2010-06-28  Colin Watson  <cjwatson@ubuntu.com>
26618
26619
	* util/grub-install.in: Add --debug-image= option.
26620
26621
2010-06-28  Colin Watson  <cjwatson@ubuntu.com>
26622
26623
	Change grub-mkdevicemap to emit /dev/disk/by-id/ names where
26624
	possible on Linux.
26625
26626
	* util/deviceiter.c (check_device): Rename to ...
26627
	(check_device_readable_unique): ... this.  Update all callers.
26628
	Maintain and check a list of which devices (by canonicalized name)
26629
	have already been seen.
26630
	(clear_seen_devices): New function.
26631
	(compare_file_names) [__linux__]: New function.
26632
	(grub_util_iterate_devices): Clear the list of seen devices on exit
26633
	and (just in case) on entry.
26634
	(grub_util_iterate_devices) [__linux__]: Iterate over non-partition
26635
	devices in /dev/disk/by-id/, in sorted order.  Remove DM-RAID
26636
	seen-devices list, superseded by general code in check_device.
26637
26638
2010-06-28  Colin Watson  <cjwatson@ubuntu.com>
26639
26640
	* commands/cat.c (options): New variable.
26641
	(grub_cmd_cat): Parse options.  If the --dos option is given, print
26642
	DOS-style "\r\n" line endings as simple newlines (Debian bug
26643
	#586358).
26644
	(GRUB_MOD_INIT): Use extcmd.
26645
	(GRUB_MOD_FINI): Likewise.
26646
	* docs/grub.texi (cat): Document --dos.
26647
26648
2010-06-28  Vladimir Serbinenko  <phcoder@gmail.com>
26649
26650
	XEN with Linux grub-mkconfig support.
26651
26652
	* conf/common.rmk (grub-mkconfig_SCRIPTS) [linux]: Add 20_linux_xen.
26653
	* util/grub-mkconfig.in: Export GRUB_CMDLINE_XEN and
26654
	GRUB_CMDLINE_XEN_DEFAULT.
26655
	* util/grub.d/20_linux_xen.in: New file.
26656
26657
2010-06-28  Vladimir Serbinenko  <phcoder@gmail.com>
26658
26659
	Initialise VGA video on qemu ourselves.
26660
26661
	* boot/i386/qemu/boot.S: Don't call 0xc000.
26662
	* conf/i386-qemu.rmk (kern/i386/qemu/init.c_DEPENDENCIES): New variable.
26663
	(kernel_img_SOURCES): Add kern/i386/qemu/init.c and bus/pci.c.
26664
	(kernel_img_HEADERS): Add pci.h.
26665
	* conf/i386.rmk (pkglib_MODULES) [qemu]: Remove pci.mod.
26666
	* configure.ac: Force unifont on qemu and yeeloong.
26667
	* include/grub/i386/qemu/kernel.h (grub_qemu_init_cirrus): New proto.
26668
	(grub_vga_palette_write): Use correct register.
26669
	* kern/i386/coreboot/init.c (grub_machine_init) [GRUB_MACHINE_QEMU]:
26670
	Call grub_qemu_init_cirrus.
26671
	* kern/i386/qemu/init.c: New file.
26672
	* term/i386/pc/vga_text.c (inc_y): Never read outside the screen.
26673
26674
	* commands/videotest.c (grub_cmd_videotest): Handle double buffering.
26675
26676
2010-06-26  Pavel Roskin  <proski@gnu.org>
26677
26678
	* util/grub.d/10_linux.in: Add support for initrd images on Fedora
26679
	13.
26680
26681
2010-06-26  Colin Watson  <cjwatson@ubuntu.com>
26682
26683
	* docs/grub.texi (Simple configuration): Explain that
26684
	GRUB_DISABLE_LINUX_RECOVERY and GRUB_DISABLE_NETBSD_RECOVERY must be
26685
	set to `true' to disable their respective recovery entries, not
26686
	merely set.
26687
26688
2010-06-26  Colin Watson  <cjwatson@ubuntu.com>
26689
26690
	Make the `source' command slightly faster.
26691
26692
	* normal/main.c (grub_normal_execute): Don't re-read list files when
26693
	nested.
26694
26695
2010-06-23  Colin Watson  <cjwatson@ubuntu.com>
26696
26697
	* loader/i386/multiboot_mbi.c (retrieve_video_parameters): Set red
26698
	field position and mask size to red fields from mode_info, not
26699
	green.
26700
	* loader/multiboot_mbi2.c (retrieve_video_parameters): Likewise.
26701
	Remove redundant tag->common.framebuffer_type assignment.
26702
	Reported by: Seth Goldberg.
26703
26704
2010-06-23  Colin Watson  <cjwatson@ubuntu.com>
26705
26706
	Sync up other versions of the Linux loader with Robert Millan's
26707
	change of 2010-01-09, "Make loader output a bit more user-friendly".
26708
26709
	* loader/i386/efi/linux.c (grub_linux_boot): Move debug info to
26710
	grub_dprintf().
26711
	(grub_cmd_linux): Likewise.
26712
	(grub_cmd_initrd): Likewise.
26713
	* loader/i386/ieee1275/linux.c (grub_cmd_linux): Likewise.
26714
	* loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
26715
26716
2010-06-21  Colin Watson  <cjwatson@ubuntu.com>
26717
26718
	* kern/efi/mm.c (grub_efi_mm_init): Handle systems with memory maps
26719
	larger than MEMORY_MAP_SIZE.
26720
26721
2010-06-21  BVK Chaitanya  <bvk.groups@gmail.com>
26722
26723
	Fix parallel build.
26724
26725
	* conf/common.rmk: Add grub_script.tab.h as a grub-script-check
26726
	dependency.
26727
	* script/parser.y: #include grub_script.tab.h header.
26728
26729
2010-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
26730
26731
	Support >3GiB and <16MiB RAM in i386-qemu.
26732
26733
	* kern/i386/qemu/mmap.c (QEMU_CMOS_MEMSIZE2_HIGH): New const.
26734
	(QEMU_CMOS_MEMSIZE2_LOW): Likewise.
26735
	(grub_lower_mem): Removed.
26736
	(grub_upper_mem): Likewise.
26737
	(mem_size): Made static.
26738
	(above_4g): New variable.
26739
	(grub_machine_mmap_init): Detect small mem_size and above_4g.
26740
	(grub_machine_mmap_iterate): Order in ascending order and add above_4g
26741
	support.
26742
26743
2010-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
26744
26745
	Cirrus 5446 and Bochs video cards support.
26746
26747
	* conf/i386.rmk (pkglib_MODULES): Add video_cirrus.mod and
26748
	video_bochs.mod
26749
	(video_cirrus_mod_SOURCES): New variable.
26750
	(video_cirrus_mod_CFLAGS): Likewise.
26751
	(video_cirrus_mod_LDFLAGS): Likewise.
26752
	(video_bochs_mod_SOURCES): Likewise.
26753
	(video_bochs_mod_CFLAGS): Likewise.
26754
	(video_bochs_mod_LDFLAGS): Likewise.
26755
	* include/grub/vga.h: New file.
26756
	* include/grub/video_fb.h (grub_video_fb_doublebuf_blit_init): Removed.
26757
	(grub_video_fb_set_page_t): New type.
26758
	(grub_video_fb_setup): New prototype.
26759
	(grub_video_fb_swap_buffers): Likewise.
26760
	(grub_video_fb_get_info_and_fini): Likewise.
26761
	* term/i386/pc/vga_text.c (CRTC_ADDR_PORT): Moved to include/grub/vga.h.
26762
	(CRTC_DATA_PORT): Likewise.
26763
	(CRTC_CURSOR): Likewise.
26764
	(CRTC_CURSOR_ADDR_HIGH): Likewise.
26765
	(CRTC_CURSOR_ADDR_LOW): Likewise.
26766
	(CRTC_CURSOR_DISABLE): Likewise.
26767
	(update_cursor): Use grub_vga_cr_write.
26768
	(grub_vga_text_setcursor): Likewise.
26769
	* video/bochs.c: New file.
26770
	* video/fb/video_fb.c (render_target): Moved into framebuffer variable.
26771
	(palette): Likewise.
26772
	(palette_size): Likewise.
26773
	(framebuffer): New variable.
26774
	(grub_video_fb_init): Use 'framebuffer'.
26775
	(grub_video_fb_fini): Likewise.
26776
	(grub_video_fb_get_info): Likewise.
26777
	(grub_video_fb_get_palette): Likewise.
26778
	(grub_video_fb_set_palette): Likewise.
26779
	(grub_video_fb_set_viewport): Likewise.
26780
	(grub_video_fb_get_viewport): Likewise.
26781
	(grub_video_fb_map_color): Likewise.
26782
	(grub_video_fb_map_rgb): Likewise.
26783
	(grub_video_fb_map_rgba): Likewise.
26784
	(grub_video_fb_unmap_color): Likewise.
26785
	(grub_video_fb_unmap_color_int): Likewise.
26786
	(grub_video_fb_fill_rect): Likewise.
26787
	(grub_video_fb_blit_bitmap): Likewise.
26788
	(grub_video_fb_blit_render_target): Likewise.
26789
	(grub_video_fb_scroll): Likewise.
26790
	(grub_video_fb_create_render_target): Likewise.
26791
	(grub_video_fb_doublebuf_blit_init): Likewise.
26792
	(grub_video_fb_set_active_render_target): Handle doublebuffering.
26793
	(doublebuf_pageflipping_update_screen): New function.
26794
	(doublebuf_pageflipping_init): Likewise.
26795
	(grub_video_fb_setup): Likewise.
26796
	(grub_video_fb_swap_buffers): Likewise.
26797
	(grub_video_fb_get_info_and_fini): Likewise.
26798
	* video/i386/pc/vbe.c (framebuffer): Remove all doublebuffering fields.
26799
	All users updated.
26800
	(doublebuf_pageflipping_commit): Restructured into ...
26801
	(doublebuf_pageflipping_set_page): ... this.
26802
	(doublebuf_pageflipping_update_screen): Removed.
26803
	(doublebuf_pageflipping_init): Likewise.
26804
	(double_buffering_init): Likewise.
26805
	(grub_video_vbe_setup): Use grub_video_fb_setup.
26806
	(grub_video_vbe_swap_buffers): Removed.
26807
	(grub_video_vbe_set_active_render_target): Likewise.
26808
	(grub_video_vbe_get_active_render_target): Likewise.
26809
	(grub_video_vbe_get_info_and_fini): Use grub_video_fb_get_info_and_fini.
26810
	(grub_video_vbe_adapter): Use grub_video_fb_swap_buffers,
26811
	grub_video_fb_set_active_render_target and
26812
	grub_video_fb_get_active_render_target.
26813
	* video/i386/pc/vga.c (SEQUENCER_ADDR_PORT): Move to include/grub/vga.h.
26814
	(SEQUENCER_DATA_PORT): Likewise.
26815
	(MAP_MASK_REGISTER): Likewise.
26816
	(CRTC_ADDR_PORT): Likewise.
26817
	(CRTC_DATA_PORT): Likewise.
26818
	(START_ADDR_HIGH_REGISTER): Likewise.
26819
	(START_ADDR_LOW_REGISTER): Likewise.
26820
	(GRAPHICS_ADDR_PORT): Likewise.
26821
	(GRAPHICS_DATA_PORT): Likewise.
26822
	(READ_MAP_REGISTER): Likewise.
26823
	(INPUT_STATUS1_REGISTER): Likewise.
26824
	(INPUT_STATUS1_VERTR_BIT): Likewise.
26825
	(get_map_mask): Use grub_vga_sr_read.
26826
	(set_map_mask): Use grub_vga_sr_write.
26827
	(set_read_map): Use grub_vga_gr_write.
26828
	(set_start_address): Use grub_vga_cr_write.
26829
	* video/sm712.c (framebuffer): Remove leftover fields.
26830
26831
2010-06-20  Colin Watson  <cjwatson@ubuntu.com>
26832
26833
	* util/grub-mkconfig.in: Capitalise and export GRUB_PREFIX.  Stop
26834
	setting GRUB_VIDEO_BACKEND.  Make it available as a user override
26835
	instead.  Replace the gfxterm backend check with a check that
26836
	${GRUB_PREFIX}/video.lst is non-empty.
26837
	* util/grub.d/00_header.in: Use GRUB_PREFIX rather than computing it
26838
	again.
26839
	(load_video): New generated function.  Call it before loading
26840
	gfxterm rather than loading ${GRUB_VIDEO_BACKEND}.
26841
	* util/grub.d/10_linux.in (linux_entry): Call load_video.
26842
	* util/grub.d/30_os-prober.in (osx_entry): Likewise.
26843
	* docs/grub.texi (Simple configuration): Document
26844
	GRUB_VIDEO_BACKEND.
26845
26846
2010-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
26847
26848
	Use video functions in linux and xnu loaders.
26849
26850
	* conf/i386-pc.rmk (xnu_mod_SOURCES): Remove loader/i386/pc/xnu.c.
26851
	* conf/x86-efi.rmk (xnu_mod_SOURCES): Remove loader/i386/efi/xnu.c.
26852
	* include/grub/i386/xnu.h (grub_xnu_set_video): Removed.
26853
	* loader/i386/efi/linux.c (grub_linux_setup_video): Copied from
26854
	loader/i386/pc/linux.c.
26855
	(grub_linux_boot): Resynced with loader/i386/pc/linux.c.
26856
	(find_line_len): Removed.
26857
	(find_framebuf): Likewise.
26858
	(grub_cmd_linux): Declare grub_linux_boot as possibly returning.
26859
	* loader/i386/efi/xnu.c: Removed.
26860
	* loader/i386/pc/xnu.c: Moved from here...
26861
	* loader/i386/xnu.c: ...here.
26862
26863
	Enable priorities in video drivers.
26864
26865
	* include/grub/video.h (grub_video_adapter_prio_t): New type.
26866
	(grub_video_adapter): New field prio.
26867
	(grub_video_register): Respect prio when inserting.
26868
	* video/efi_gop.c (grub_video_gop_adapter): Add prio.
26869
	* video/efi_uga.c (grub_video_uga_adapter): Likewise.
26870
	* video/emu/sdl.c (grub_video_sdl_adapter): Likewise.
26871
	* video/i386/pc/vbe.c (grub_video_vbe_adapter): Likewise.
26872
	* video/i386/pc/vga.c (grub_video_vga_adapter): Likewise.
26873
	* video/ieee1275.c (grub_video_ieee1275_adapter): Likewise.
26874
	* video/sm712.c (grub_video_sm712_adapter): Likewise.
26875
26876
	Fix SDL driver ID.
26877
26878
	* include/grub/video.h (grub_video_driver_id_t): New value
26879
	GRUB_VIDEO_DRIVER_SDL.
26880
	* video/emu/sdl.c (grub_video_sdl_adapter): Add id.
26881
1.13.14 by Colin Watson
Import upstream version 1.98+20100617
26882
2010-06-17  Colin Watson  <cjwatson@ubuntu.com>
26883
26884
	* util/i386/pc/grub-setup.c (usage): Pass an extra `program_name'
26885
	argument to printf.
26886
	* util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
26887
26888
2010-06-17  Colin Watson  <cjwatson@ubuntu.com>
26889
26890
	* util/i386/pc/grub-setup.c (usage): Fix syntax error.
26891
	* util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
26892
26893
2010-06-17  Colin Watson  <cjwatson@ubuntu.com>
26894
26895
	* util/i386/pc/grub-setup.c (usage): Warn against running grub-setup
26896
	directly, and recommend grub-install instead.
26897
	* util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
26898
26899
2010-06-17  Colin Watson  <cjwatson@ubuntu.com>
26900
26901
	Fix i386-pc prefix handling with nested partitions (Debian bug
26902
	#585068).  Note that the case where the core image is booted using
26903
	multiboot and relocated from its original location still requires
26904
	more work.
26905
26906
	* kern/i386/pc/init.c (make_install_device): If the prefix starts
26907
	with "(,", fill the boot drive in between those two characters, but
26908
	expect that a full partition specification including partition map
26909
	names will follow.
26910
	* util/i386/pc/grub-setup.c (setup): Unless an explicit prefix was
26911
	specified, write a prefix without the drive name but including a
26912
	full partition specification.
26913
26914
2010-06-16  Colin Watson  <cjwatson@ubuntu.com>
26915
26916
	* util/grub-mkconfig.in: Ignore non-option arguments, for
26917
	compatibility with older versions (before 2010-06-12) which did the
26918
	same.  In particular, this makes it easier to ship an update-grub
26919
	wrapper which is compatible with that used with GRUB Legacy (Debian
26920
	bug #586056).
26921
26922
2010-06-14  Grégoire Sutre  <gregoire.sutre@gmail.com>
26923
26924
	* Makefile.in (install-local): Use $$file.h2m instead of $$dest.h2m
26925
	for manual page generation.
26926
26927
2010-06-14  Grégoire Sutre  <gregoire.sutre@gmail.com>
26928
26929
	* po/POTFILES: Remove leftover commands/handler.c.
26930
1.13.13 by Colin Watson
Import upstream version 1.98+20100614
26931
2010-06-14  Colin Watson  <cjwatson@ubuntu.com>
26932
26933
	* util/grub-mkconfig.in: Remove vestige of old argument parsing that
26934
	left this script non-functional.
26935
26936
2010-06-14  Colin Watson  <cjwatson@ubuntu.com>
26937
26938
	* docs/man/grub-emu.h2m: New file.
26939
26940
2010-06-13  Colin Watson  <cjwatson@ubuntu.com>
26941
26942
	* docs/grub.texi (Commands): Document reduced command set in rescue
26943
	mode.
26944
	(cpuid): New section.
26945
26946
2010-06-13  Grégoire Sutre  <gregoire.sutre@gmail.com>
26947
26948
	* kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Use the
26949
	new partition naming style.
26950
	* util/grub-install.in: Adapt sed subtitutions in grub-probe calls.
26951
26952
2010-06-12  BVK Chaitanya  <bvk.groups@gmail.com>
26953
26954
	Add "-o grub.iso" like cmdline options support.
26955
26956
	* util/grub-install.in: Improve cmdline option parsing.
26957
	* util/grub-mkconfig.in: Likewise.
26958
	* util/grub-mkrescue.in: Likewise.
26959
	* util/grub-reboot.in: Likewise.
26960
	* util/grub-set-default.in: Likewise.
26961
	* util/i386/efi/grub-install.in: Likewise.
26962
	* util/ieee1275/grub-install.in: Likewise.
26963
	* util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
26964
26965
2010-06-12  Colin Watson  <cjwatson@ubuntu.com>
26966
26967
	* .bzrignore: Ignore 41_custom.
26968
26969
2010-06-12  Thomas Schmitt  <scdbackup@gmx.net>
26970
26971
	* util/grub-mkrescue.in: Pass unrecognized options to xorriso.
26972
26973
2010-06-12  Colin Watson  <cjwatson@ubuntu.com>
26974
26975
	Avoid false positives in fs.lst, partmap.lst, and video.lst due to
26976
	prototype declarations.
26977
26978
	* genmk.rb (PModule::rule): Define GRUB_LST_GENERATOR when
26979
	generating fs, partmap, and video lists.
26980
	* include/grub/fs.h (grub_fs_register): Omit prototype if
26981
	GRUB_LST_GENERATOR is defined.
26982
	* include/grub/partition.h (grub_partition_map_register): Likewise.
26983
	* include/grub/video.h (grub_video_register): Likewise.
26984
26985
2010-06-12  Javier Martín <lordhabbit@gmail.com>
26986
26987
	* include/grub/types.h: Check for GRUB_CPU_SIZEOF_LONG when appropriate.
26988
26989
2010-06-12  Thomas Schmitt  <scdbackup@gmx.net>
26990
26991
	* util/grub-mkrescue.in: Support --xorriso argument.
26992
26993
2010-06-12  Vladimir Serbinenko  <phcoder@gmail.com>
26994
26995
	* util/grub-mkrescue.in: Use -graft-points instead of -pathspecs.
26996
	Suggested by: Thomas Schmitt.
26997
26998
2010-06-12  Vladimir Serbinenko  <phcoder@gmail.com>
26999
27000
	* util/grub-mkrescue.in: Add --sort-weight arguments to xorriso.
27001
	Suggested by: Thomas Schmitt.
27002
27003
2010-06-12  Vladimir Serbinenko  <phcoder@gmail.com>
27004
27005
	custom.cfg support.
27006
27007
	* conf/common.rmk (grub-mkconfig_SCRIPTS): Add 41_custom.
27008
	* util/grub.d/41_custom.in: New file.
27009
27010
2010-06-12  Colin Watson  <cjwatson@ubuntu.com>
27011
27012
	* util/grub-mkrescue.in (make_image): Remove sh module, which has
27013
	been merged back into normal.
27014
27015
2010-06-11  Colin Watson  <cjwatson@ubuntu.com>
27016
27017
	* include/grub/efi/uga_draw.h (GRUB_EFI_UGA_GLT_MAX): Rename to ...
27018
	(GRUB_EFI_UGA_BLT_MAX): ... this (typo fix).
27019
27020
2010-06-11  Colin Watson  <cjwatson@ubuntu.com>
27021
27022
	* Makefile.in (install-local): Include $(srcdir)/docs/man/$$dest.h2m
27023
	when generating manual pages.
27024
	* docs/man/grub-bin2h.h2m: New file.
27025
	* docs/man/grub-editenv.h2m: New file.
27026
	* docs/man/grub-fstest.h2m: New file.
27027
	* docs/man/grub-install.h2m: New file.
27028
	* docs/man/grub-macho2img.h2m: New file.
27029
	* docs/man/grub-mkconfig.h2m: New file.
27030
	* docs/man/grub-mkdevicemap.h2m: New file.
27031
	* docs/man/grub-mkfont.h2m: New file.
27032
	* docs/man/grub-mkimage.h2m: New file.
27033
	* docs/man/grub-mkpasswd-pbkdf2.h2m: New file.
27034
	* docs/man/grub-mkrelpath.h2m: New file.
27035
	* docs/man/grub-mkrescue.h2m: New file.
27036
	* docs/man/grub-ofpathname.h2m: New file.
27037
	* docs/man/grub-pe2elf.h2m: New file.
27038
	* docs/man/grub-probe.h2m: New file.
27039
	* docs/man/grub-reboot.h2m: New file.
27040
	* docs/man/grub-script-check.h2m: New file.
27041
	* docs/man/grub-set-default.h2m: New file.
27042
	* docs/man/grub-setup.h2m: New file.
27043
27044
2010-06-10  Vladimir Serbinenko  <phcoder@gmail.com>
27045
27046
	Use FOR_* macros instead of *_iterate whenever possible.
27047
27048
	* commands/handler.c: Removed.
27049
	* commands/help.c (grub_cmd_help): Use FOR_COMMANDS.
27050
	* commands/minicmd.c (grub_mini_cmd_lsmod): Use FOR_DL_MODULES.
27051
	* conf/any-emu.rmk (kernel_img_SOURCES): Remove kern/handler.c.
27052
	* conf/common.rmk (script/lexer.c_DEPENDENCIES): Add grub_script.yy.h.
27053
	(grub_probe_SOURCES): Remove kern/parser.c.
27054
	(util/grub-script-check.c_DEPENDENCIES): Removed.
27055
	(grub_script_check_SOURCES): Remove kern/handler.c, kern/parser.c
27056
	and grub_script_check_init.c.
27057
	(grub_script_check_init.lst): Removed.
27058
	(grub_script_check_init.h): Likewise.
27059
	(grub_script_check_init.c): Likewise.
27060
	(pkglib_MODULES): Remove handler.mod and sh.mod.
27061
	(handler_mod_SOURCES): Removed.
27062
	(handler_mod_CFLAGS): Likewise.
27063
	(handler_mod_LDFLAGS): Likewise.
27064
	(normal_mod_SOURCES): Remove normal/handler.c.
27065
	Add script/main.c, script/script.c, script/execute.c,
27066
	script/function.c, script/lexer.c, grub_script.tab.c
27067
	and grub_script.yy.c.
27068
	* conf/i386-coreboot.rmk (kernel_img_SOURCES): Remove kern/handler.c.
27069
	* conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise.
27070
	* conf/i386-pc.rmk (kernel_img_SOURCES): Likewise.
27071
	(grub_setup_SOURCES): Remove kern/parser.c.
27072
	* conf/i386-qemu.rmk (kernel_img_SOURCES): Remove kern/handler.c.
27073
	* conf/mips-qemu-mips.rmk (kernel_img_SOURCES): Likewise.
27074
	* conf/mips-yeeloong.rmk (kernel_img_SOURCES): Likewise.
27075
	* conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Likewise.
27076
	* conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise.
27077
	(grub_setup_SOURCES): Remove kern/parser.c.
27078
	* conf/x86-efi.rmk (kernel_img_SOURCES): Remove kern/handler.c.
27079
	* gettext/gettext.c (grub_gettext_delete_list): Don't use grub_list_pop.
27080
	* include/grub/command.h (grub_command_iterate): Removed.
27081
	(FOR_COMMANDS): New macro.
27082
	* include/grub/dl.h (grub_dl): New member next.
27083
	(grub_dl_iterate): Removed.
27084
	(grub_dl_head): New variable declaration.
27085
	(FOR_DL_MODULES): New macro.
27086
	* include/grub/fs.h: Include list.h.
27087
	(grub_fs): Make next first element.
27088
	(grub_fs_list): New variable declaration.
27089
	(grub_fs_register): Make inline.
27090
	(grub_fs_unregister): Likewise.
27091
	(grub_fs_iterate): Removed.
27092
	(FOR_FILESYSTEMS): New macro.
27093
	* include/grub/handler.h: Removed.
27094
	* include/grub/list.h (grub_list_hook_t): Removed.
27095
	(grub_list_test_t): Likewise.
27096
	(grub_list_pop): Likewise.
27097
	(grub_list_iterate): Likewise.
27098
	(grub_list_insert): Likewise.
27099
	(FOR_LIST_ELEMENTS): New macro.
27100
	* include/grub/parser.h (grub_parser_class): Removed.
27101
	(grub_parser_register): Likewise.
27102
	(grub_parser_unregister): Likewise.
27103
	(grub_parser_get_current): Likewise.
27104
	(grub_parser_set_current): Likewise.
27105
	(grub_register_rescue_parser): Likewise.
27106
	(grub_rescue_parse_line): New function.
27107
	* include/grub/partition.h (FOR_PARTITION_MAPS): Use FOR_LIST_ELEMENTS.
27108
	* include/grub/script_sh.h (grub_script_function_list): New variable
27109
	declaration.
27110
	(FOR_SCRIPT_FUNCTIONS): New macro.
27111
	(grub_script_function_iterate): Removed.
27112
	(grub_normal_parse_line): New prototype.
27113
	* include/grub/term.h (FOR_ACTIVE_TERM_INPUTS): Use FOR_LIST_ELEMENTS.
27114
	(FOR_DISABLED_TERM_INPUTS): Likewise.
27115
	(FOR_ACTIVE_TERM_OUTPUTS): Likewise.
27116
	(FOR_DISABLED_TERM_OUTPUTS): Likewise.
27117
	* include/grub/video.h (grub_video_adapter): Move 'next' to first
27118
	element.
27119
	(grub_video_register): Inline.
27120
	(grub_video_unregister): Likewise.
27121
	(grub_video_adapter_list): New variable declaration.
27122
	(grub_video_iterate): Removed.
27123
	(FOR_VIDEO_ADAPTERS): New macro.
27124
	* kern/dl.c (grub_dl_list): Removed. All users updated.
27125
	(grub_dl_iterate): Removed.
27126
	* kern/fs.c (grub_fs_list): Make global.
27127
	(grub_fs_register): Removed.
27128
	(grub_fs_unregister): Likewise.
27129
	(grub_fs_iterate): Likewise.
27130
	* kern/handler.c: Removed.
27131
	* kern/list.c (grub_list_pop): Removed.
27132
	(grub_list_iterate): Likewise.
27133
	(grub_list_insert): Likewise.
27134
	(grub_named_list_find): Use FOR_LIST_ELEMENTS.
27135
	(grub_prio_list_insert): Don't use grub_list_insert.
27136
	* kern/main.c (grub_register_rescue_parser): Don't call
27137
	grub_register_rescue_parser.
27138
	* kern/parser.c (grub_parser_class): Removed.
27139
	(grub_parser_execute): Use grub_rescue_parse_line.
27140
	* kern/rescue_parser.c (grub_rescue_parse_line): Make global.
27141
	(grub_rescue_parser): Removed.
27142
	(grub_register_rescue_parser): Likewise.
27143
	* kern/rescue_reader.c (grub_rescue_run): Use grub_rescue_parse_line.
27144
	* normal/auth.c (is_authenticated): Use FOR_LIST_ELEMENTS.
27145
	(grub_auth_check_authentication): Likewise.
27146
	* normal/completion.c (iterate_command): Removed.
27147
	(grub_normal_do_completion): Use FOR_COMMANDS.
27148
	* normal/handler.c: Removed.
27149
	* normal/main.c (read_config_file): Remove parser changing.
27150
	(grub_normal_execute): Don't call read_handler_list.
27151
	(grub_normal_read_line_real): Statically allocate prompt.
27152
	(grub_cmdline_run): Use grub_normal_parse_line.
27153
	(GRUB_MOD_FINI): Don't call free_handler_list.
27154
	* normal/menu_entry.c (run): Likewise.
27155
	* script/function.c (grub_script_function_list): Make global.
27156
	(grub_script_function_iterate): Removed.
27157
	* script/main.c (grub_normal_parse_line): Make global.
27158
	(grub_sh_parser): Removed.
27159
	(GRUB_MOD_INIT): Likewise.
27160
	(GRUB_MOD_FINI): Likewise.
27161
	* tests/lib/functional_test.c (grub_functional_test): Use
27162
	FOR_LIST_ELEMENTS.
27163
	* tests/lib/test.c (free_failures): Don't use grub_list_pop.
27164
	(grub_test_run): Use FOR_LIST_ELEMENTS.
27165
	* tests/lib/unit_test.c (main): Likewise.
27166
	* util/deviceiter.c (grub_util_iterate_devices): Don't use
27167
	grub_list_pop.
27168
	* util/grub-fstest.c (grub_term_input_class): Removed.
27169
	(grub_term_output_class): Likewise.
27170
	* util/grub-probe.c: Likewise.
27171
	* util/i386/pc/grub-setup.c: Likewise.
27172
	* util/sparc64/ieee1275/grub-setup.c: Likewise.
27173
	* util/grub-script-check.c (main): Don't call grub_init_all and
27174
	grub_fini_all.
27175
	* video/video.c (grub_video_adapter_list): Make global.
27176
	(grub_video_register): Removed.
27177
	(grub_video_unregister): Likewise.
27178
	(grub_video_iterate): Likewise.
27179
27180
2010-06-09  Vladimir Serbinenko  <phcoder@gmail.com>
27181
27182
	* docs/grub.texi (Vendor power-on button): Add Asus EeePC 1005PE as
27183
	reported by Henrique Ferreiro.
27184
27185
2010-06-09  Robert Millan  <rmh@gnu.org>
27186
27187
	* util/grub.d/10_linux.in: Prefer compressed images over non-compressed
27188
	ones, when both are available.
27189
27190
2010-06-08  Grégoire Sutre  <gregoire.sutre@gmail.com>
27191
27192
	Make --version uniform and avoid hard-coded program name.
27193
27194
	* util/grub-mkimage.c (main): Use `program_name' instead of
27195
	hard-coded string.
27196
	* util/i386/pc/grub-setup.c (main): Likewise.
27197
	* util/sparc64/ieee1275/grub-setup.c (parse_options): Likewise.
27198
	* util/grub-install.in: Save the basename of $0 in $self, and use the
27199
	latter in informational messages.  Use the same format for --version
27200
	as the binary programs.
27201
	* util/grub-mkconfig.in: Likewise.
27202
	* util/grub-mkrescue.in: Likewise.
27203
	* util/grub-reboot.in: Likewise.
27204
	* util/grub-set-default.in: Likewise.
27205
	* util/i386/efi/grub-install.in: Likewise.
27206
	* util/ieee1275/grub-install.in: Likewise.
27207
	* util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
27208
27209
2010-06-08  Grégoire Sutre  <gregoire.sutre@gmail.com>
27210
27211
	* util/i386/pc/grub-setup.c (setup): Use absolute offsets for start of
27212
	embedding area.  Use <= instead of == when checking for non-emptiness.
27213
27214
2010-06-08  Grégoire Sutre  <gregoire.sutre@gmail.com>
27215
27216
	* configure.ac: Add `.' to the directories searched for unifont.
27217
27218
2010-06-08  Colin Watson  <cjwatson@ubuntu.com>
27219
27220
	* .bzrignore: Add ascii.bitmaps, ascii.h, grub_script.yy.c, and
27221
	grub_script.yy.h.
27222
27223
2010-06-08  Colin Watson  <cjwatson@ubuntu.com>
27224
27225
	* docs/grub.texi (History): Expand to cover GRUB 2.
27226
	(Serial terminal): Refer to `terminal_input' and `terminal_output'
27227
	commands, not `terminal'.
27228
	(serial): Likewise.
27229
	(terminal_input): New section.
27230
	(terminal_output): New section.
27231
	(uppermem): New section (stub).
27232
	(Obtaining and Building GRUB): Refer to Bazaar, not Subversion.
27233
27234
2010-06-08  Colin Watson  <cjwatson@ubuntu.com>
27235
27236
	* docs/grub.texi (Security): Menu entries are unrestricted by
27237
	default, not restricted to superusers as I had previously thought.
27238
	Reword to account for this.
27239
27240
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
27241
27242
	* kern/emu/misc.c (device_mapper_null_log): New function.
27243
	(grub_device_mapper_supported): New function.
27244
	* include/grub/emu/misc.h (grub_device_mapper_supported): Add
27245
	prototype.
27246
	* kern/emu/hostdisk.c (find_partition_start): Check whether
27247
	device-mapper is supported before trying to use it.
27248
	* util/deviceiter.c (grub_util_iterate_devices): Likewise.
27249
27250
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
27251
27252
	* docs/grub.texi (Naming convention): Use GRUB 2 syntax.
27253
	(File name syntax): Likewise.
27254
	(help): --all is no longer supported in GRUB 2.  Be more precise
27255
	about pattern matching.
27256
27257
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
27258
27259
	* normal/completion.c (grub_normal_do_completion): When completing
27260
	arguments to "set" and the current word contains an equals sign,
27261
	skip to after the equals sign before starting completion.
27262
27263
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
27264
27265
	* fs/i386/pc/pxe.c (grub_pxe_open): Fix parsing of gateway_ip.
27266
27267
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
27268
27269
	* docs/grub.texi (Network): New section.
27270
	(Device syntax): The network device is called `(pxe)' in GRUB 2, not
27271
	`(nd)' as in GRUB Legacy.
27272
	(pxe_unload): New section.
27273
27274
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
27275
27276
	* docs/grub.texi (Troubleshooting): `echo' is not usually available
27277
	in the rescue shell, so recommend using `set' instead.  Thanks,
27278
	Jordan Uggla.
27279
27280
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
27281
27282
	* docs/grub.texi (Filesystem): Refer to `search' instead of `find'.
27283
	(password): New section.
27284
	(password_pbkdf2): New section.
27285
	(search): New section.
27286
	(Security): New section.
27287
	(Troubleshooting): New section, currently very incomplete.
27288
	(Invoking grub-mkpasswd-pbkdf2): New section.
27289
	(Internals): New section, currently very incomplete.
27290
27291
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
27292
27293
	* util/grub.d/00_header.in: Add some more quoting (of
27294
	"${prev_saved_entry}" and "${boot_once}") needed to make savedefault
27295
	work again.
27296
	Reported by: Mario 'BitKoenig' Holbe (Debian bug #584812).
27297
27298
2010-06-07  Colin Watson  <cjwatson@ubuntu.com>
27299
27300
	* util/grub-mkpasswd-pbkdf2.c (main): Rename top-level `c' variable
27301
	to `count', fixing variable shadowing that broke the -c option.
27302
27303
2010-06-05  Colin Watson  <cjwatson@ubuntu.com>
27304
27305
	* util/grub.d/00_header.in: Quote values assigned to `saved_entry',
27306
	in case they contain spaces.
27307
27308
2010-06-04  Colin Watson  <cjwatson@ubuntu.com>
27309
27310
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Prepend
27311
	"part_" to partmap module names, in line with grub-install.
27312
	Reported by: Jindřich Makovička (Debian bug #584426).
27313
27314
2010-06-04  Colin Watson  <cjwatson@ubuntu.com>
27315
27316
	* util/grub-mkimage.c: Make target-related error messages slightly
27317
	more helpful; -O talks about "format".  Explicitly point to the use
27318
	of -O if no target is specified.
27319
	Reported by: Didier Raboud (Debian bug #584415).
27320
27321
2010-06-03  Colin Watson  <cjwatson@ubuntu.com>
27322
27323
	* INSTALL: Document several build requirements for optional features
27324
	(libdevmapper, ncurses, libusb, SDL, FreeType, GNU Unifont).
27325
27326
2010-06-02  Grégoire Sutre  <gregoire.sutre@gmail.com>
27327
27328
	* kern/emu/hostdisk.c (convert_system_partition_to_system_disk)
27329
	[__NetBSD__]: Handle all device names matching /dev/r[a-z]+[0-9][a-z].
27330
	(find_partition_start) [__NetBSD__]: Correct error messages for NetBSD.
27331
1.13.12 by Colin Watson
Import upstream version 1.98+20100602
27332
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
27333
27334
	* docs/grub.texi (Simple configuration): Fix copy-and-paste typo.
27335
	Thanks to Jordan Uggla for spotting this.
27336
27337
2010-06-02  Aleš Nesrsta <starous@volny.cz>
27338
27339
	Finally make USB usable.
27340
27341
	* bus/usb/ohci.c (grub_ohci_reg_t): Add missing values.
27342
	(GRUB_OHCI_RHUB_PORT_POWER_MASK): New macro.
27343
	(GRUB_OHCI_RHUB_PORT_ALL_POWERED): Likewise.
27344
	(GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_MASK): Likewise.
27345
	(GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_SHIFT): Likewise.
27346
	(GRUB_OHCI_REG_FRAME_INTERVAL_FI_SHIFT): Likewise.
27347
	(GRUB_OHCI_FSMPS): Likewise.
27348
	(GRUB_OHCI_PERIODIC_START): Likewise.
27349
	(GRUB_OHCI_FRAME_INTERVAL): Likewise.
27350
	(GRUB_OHCI_SET_PORT_ENABLE): Likewise.
27351
	(GRUB_OHCI_CLEAR_PORT_ENABLE): Likewise.
27352
	(GRUB_OHCI_SET_PORT_RESET): Likewise.
27353
	(GRUB_OHCI_SET_PORT_RESET_STATUS_CHANGE): Likewise.
27354
	* bus/usb/ohci.c (grub_ohci_pci_iter): Various important fixups.
27355
	(grub_ohci_transaction): Likewise.
27356
	(grub_ohci_transfer): Improve condition detection algorithms.
27357
	Handle toggle property. Program the transactions correctly.
27358
	Improve error handling. Various important fixups.
27359
	(grub_ohci_portstatus): Put register writes in right order.
27360
	* bus/usb/uhci.c (grub_free_queue): Compute last_trans.
27361
	(grub_uhci_transfer): Don't show "failed" message on success.
27362
	* bus/usb/usb.c (grub_usb_set_configuration): Zero-fill whole "toggle"
27363
	array.
27364
	(grub_usb_device_initialize): Read first 8 bytes of descriptor to
27365
	determine its size.
27366
	* bus/usb/usbtrans.c (grub_usb_control_msg): Use descdev.maxsize0 even
27367
	before initialization is completed. Use IN direction for empty
27368
	transfers. Use last_trans and compute toggle.
27369
	* include/grub/usbtrans.h (grub_usb_transfer): New field last_trans.
27370
	(GRUB_USB_FEATURE_ENDP_HALT): Correct the value.
27371
	(GRUB_USB_FEATURE_DEV_REMOTE_WU): Likewise.
27372
	(GRUB_USB_FEATURE_TEST_MODE): Likewise.
27373
	* include/grub/usb.h (grub_usb_err_t): New value GRUB_USB_ERR_UNRECOVERABLE.
27374
	(grub_usb_device): Increase toggle to 256.
27375
	(grub_usbms_subclass_t): New values GRUB_USBMS_SUBCLASS_RBC,
27376
	GRUB_USBMS_SUBCLASS_MMC2, GRUB_USBMS_SUBCLASS_UFI and
27377
	GRUB_USBMS_SUBCLASS_SFF8070.
27378
	* include/grub/scsicmd.h (grub_scsi_test_unit_ready): New structure.
27379
	(grub_scsi_inquiry): New member page and alloc_length.
27380
	(grub_scsi_request_sense): New structure.
27381
	(grub_scsi_request_sense_data): Likewise.
27382
	(grub_scsi_read_capacity): New fields logical_block_addr, PMI and
27383
	control.
27384
	* disk/scsi.c (grub_scsi_request_sense): New function.
27385
	(grub_scsi_test_unit_ready): Likewise.
27386
	(grub_scsi_inquiry): Fill new fields.
27387
	(grub_scsi_read_capacity): Likewise.
27388
	(grub_scsi_read10): Add request sense at the end.
27389
	(grub_scsi_read12): Likewise.
27390
	(grub_scsi_write10): Likewise.
27391
	(grub_scsi_write12): Likewise.
27392
	(grub_scsi_open): Add Test Unit Ready.
27393
	* disk/usbms.c (grub_usbms_finddevs): Check configcnt.
27394
	Support additional subclasses. Con't clear halt yet. Activate the
27395
	proper config. Calculate LUNs correctly.
27396
	(grub_usbms_transfer): Various important fixups.
27397
27398
2010-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
27399
27400
	* bus/pci.c (grub_pci_iterate) [GRUB_MACHINE_MIPS_YEELOONG]: Skip ghosts.
27401
	* bus/usb/ohci.c (grub_ohci_portstatus): Handle R/WC correctly.
27402
	(grub_ohci_fini_hw): New function.
27403
	(grub_ohci_restore_hw): Likewise.
27404
	(GRUB_MOD_INIT(ohci)): Register preboot hook.
27405
	(GRUB_MOD_FINI(ohci)): Shutdown OHCI.
27406
	* term/usb_keyboard.c: Remove include of grub/machine/console.h.
27407
27408
2010-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
27409
27410
	Dedicated DMA allocations.
27411
27412
	* bus/pci.c (grub_memalign_dma32): New function
27413
	(grub_dma_free): Likewise.
27414
	(grub_dma_get_virt): Likewise.
27415
	(grub_dma_get_phys): Likewise.
27416
	* bus/usb/ohci.c (grub_ohci): New members hcca_addr and hcca_chunk.
27417
	(grub_ohci_pci_iter): Use dma32_alloc.
27418
	(grub_ohci_transfer): Likewise.
27419
	* bus/usb/usbtrans.c (grub_usb_control_msg): Likewise.
27420
	(grub_usb_bulk_readwrite): Likewise.
27421
	* include/grub/pci.h: Add declarations.
27422
27423
2010-06-02  Vladimir Serbinenko  <phcoder@gmail.com>
27424
27425
	CS5536 support.
27426
27427
	* bus/cs5536.c: New file.
27428
	* bus/usb/ohci.c (grub_ohci_pci_iter): Check for CS5536.
27429
	* conf/i386.rmk (pkglib_MODULES): Add cs5536.mod.
27430
	(cs5536_mod_SOURCES): New variable.
27431
	(cs5536_mod_CFLAGS): Likewise.
27432
	(cs5536_mod_LDFLAGS): Likewise.
27433
	* conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add cs5536.h and
27434
	machine/pci.h.
27435
	(kernel_img_SOURCES): Add bus/cs5536.c.
27436
	(pkglib_MODULES): Add usb.mod, usbtest.mod, ohci.mod, usbms.mod and
27437
	usb_keyboard.mod.
27438
	(usb_mod_SOURCES): New variable.
27439
	(usb_mod_CFLAGS): New variable.
27440
	(usb_mod_LDFLAGS): New variable.
27441
	(usbtest_mod_SOURCES): New variable.
27442
	(usbtest_mod_CFLAGS): New variable.
27443
	(usbtest_mod_LDFLAGS): New variable.
27444
	(ohci_mod_SOURCES): New variable.
27445
	(ohci_mod_CFLAGS): New variable.
27446
	(ohci_mod_LDFLAGS): New variable.
27447
	(usbms_mod_SOURCES): New variable.
27448
	(usbms_mod_CFLAGS): New variable.
27449
	(usbms_mod_LDFLAGS): New variable.
27450
	(usb_keyboard_mod_SOURCES): New variable.
27451
	(usb_keyboard_mod_CFLAGS): New variable.
27452
	(usb_keyboard_mod_LDFLAGS): New variable.
27453
	* include/grub/smbus.h: New file.
27454
	* include/grub/cs5536.h: New file.
27455
27456
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
27457
27458
	* util/grub.d/00_header.in: Add safety check to make sure that
27459
	${locale_dir} exists before trying to probe it.
27460
27461
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
27462
27463
	* docs/grub.texi (SCO UnixWare): Remove, at Vladimir's request and
27464
	per the GNU Coding Standards; this is now too obscure to be worth
27465
	documenting.
27466
	(QNX): Likewise.
27467
	(chainloader): Remove cross-reference to `SCO UnixWare'.
27468
27469
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
27470
27471
	* docs/grub.texi (Chain-loading): New section.
27472
	(DOS/Windows): New section, borrowed from GRUB Legacy with details
27473
	adjusted for GRUB 2.
27474
	(SCO UnixWare): Likewise.
27475
	(QNX): Likewise.
27476
	(chainloader): Add reference to `Block list syntax'.
27477
	(drivemap): New section.
27478
	(parttool): New section.
27479
27480
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
27481
27482
	* docs/grub.texi (GNU GRUB manual): Remove reference to `Invoking
27483
	the grub shell'.
27484
	(Installation): Add reference to `Making a GRUB bootable CD-ROM'.
27485
	(Installing GRUB using grub-install): Remove reference to the grub
27486
	shell; mention `grub-mkimage' and `grub-setup' instead.
27487
	(Invoking grub-install): Likewise.
27488
	(Interface): Add reference to `Menu entry editor'.
27489
	(serial): Remove `--device' option.
27490
27491
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
27492
27493
	* docs/grub.texi (Configuration): New section, documenting
27494
	configuration file generation using grub-mkconfig.  I've left a slot
27495
	for documenting the full shell scripting format but have not yet
27496
	started on writing that up.
27497
	(Invoking grub-mkconfig): New section.
27498
27499
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
27500
27501
	* docs/grub.texi (direntry): Remove grub-terminfo reference.
27502
	(GNU GRUB manual): Likewise.
27503
	(General commands): Update description of `terminfo' for GRUB 2.
27504
27505
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
27506
27507
	* commands/gptsync.c (grub_cmd_gptsync): Fix typos.
27508
	(GRUB_MOD_INIT): Fix capitalisation.
27509
	* docs/grub.texi (Command-line and menu entry commands): Document
27510
	gettext and gptsync commands.
27511
27512
2010-06-02  Colin Watson  <cjwatson@ubuntu.com>
27513
27514
	* conf/any-emu.rmk (kernel_img_SOURCES) [!x86]: Include
27515
	kern/$(target_cpu)/cache.S even if TARGET_NO_MODULES = yes.
27516
27517
2010-06-01  Colin Watson  <cjwatson@ubuntu.com>
27518
27519
	Add btrfs probing support, currently only in the single-device case.
27520
27521
	* kern/emu/getroot.c (find_root_device_from_mountinfo): New
27522
	function.
27523
	(grub_guess_root_device): Call find_root_device_from_mountinfo
27524
	before looking in /dev.
27525
27526
2010-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
27527
27528
	* disk/i386/pc/biosdisk.c (grub_biosdisk_open): Use
27529
	GRUB_DISK_SIZE_UNKNOWN.
27530
	* disk/ieee1275/ofdisk.c (grub_ofdisk_open): Likewise.
27531
27532
2010-05-31  Jiro SEKIBA <jir@unicus.jp>
27533
27534
	* include/grub/disk.h (GRUB_DISK_SIZE_UNKNOWN): New macro.
27535
	* fs/nilfs.c: Support 2nd super block in case 1st one is accidently
27536
	corrupted or not synced properly.
27537
27538
2010-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
27539
27540
	* normal/main.c (grub_normal_add_menu_entry): Avoid going out of args.
27541
	Reported by: Seth Goldberg.
27542
27543
2010-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
27544
27545
	* loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix incorrect
27546
	addition of dest.
27547
	Reported by: Seth Goldberg.
27548
27549
2010-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
27550
27551
	* commands/setpci.c (grub_setpci_iter): Fix an incorrect function check.
27552
	Reported by: Seth Goldberg.
27553
27554
2010-05-31  Vladimir Serbinenko  <phcoder@gmail.com>
27555
27556
	* loader/multiboot_elfxx.c (grub_multiboot_load_elfXX) [__mips]: Check
27557
	64-bit address as signed on MIPS.
27558
27559
2010-05-28  Colin Watson  <cjwatson@ubuntu.com>
27560
27561
	* configure.ac: AC_PROG_LEX sets LEX to ":" if lex is missing, not
27562
	to the empty string.
27563
27564
2010-05-28  BVK Chaitanya  <bvk.groups@gmail.com>
27565
27566
	Fix grub-emu issues on NetBSD, with gcc 4.1.3.
27567
27568
	* conf/any-emu.rmk: Remove unnecessary COMMON_CFLAGS.
27569
	* include/grub/emu/misc.h (canonicalize_file_name): New Prototype.
27570
	* kern/misc.c (__enable_execute_stack): Disable on
27571
	GRUB_MACHINE_EMU.
27572
27573
2010-05-28  Colin Watson  <cjwatson@ubuntu.com>
27574
27575
	Make grub-probe work with symbolic links under /dev/mapper as well
27576
	as with real block devices.  The Linux world seems to be (at best)
27577
	in transition here, and GRUB shouldn't get caught in the middle.
27578
27579
	* kern/emu/getroot.c (find_root_device): Follow symbolic links under
27580
	/dev/mapper.
27581
1.13.11 by Colin Watson
Import upstream version 1.98+20100527
27582
2010-05-27  Colin Watson  <cjwatson@ubuntu.com>
27583
27584
	* util/grub-script-check.c (main): Ensure defined behaviour on empty
27585
	input files (in which case exit zero).
27586
27587
2010-05-27  Colin Watson  <cjwatson@ubuntu.com>
27588
27589
	* kern/emu/misc.c (canonicalize_file_name): realpath can still
27590
	return NULL for various reasons even if it has a maximum-length
27591
	buffer: for example, there might be a symlink loop, or the path
27592
	might exceed PATH_MAX.  If this happens, return NULL.
27593
27594
2010-05-27  Robert Millan  <rmh@gnu.org>
27595
27596
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Insert
27597
	partmap module to handle cross-partmap setups.
27598
	Reported by Orestes Mas.  Gràcies!
27599
27600
2010-05-27  Colin Watson  <cjwatson@ubuntu.com>
27601
27602
	* util/grub-mkrescue.in: Initialise override_dir rather than
27603
	assuming that it's unset or empty in the environment.
27604
27605
2010-05-26  Grégoire Sutre  <gregoire.sutre@gmail.com>
27606
27607
	* kern/emu/hostdisk.c (find_partition_start) [__NetBSD__]: Renamed
27608
	variable index into p_index to suppress a warning with -Wshadow.
27609
27610
2010-05-25  BVK Chaitanya  <bvk.groups@gmail.com>
27611
27612
	* INSTALL: Added flex >= 2.5.35 requirement.
27613
27614
2010-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
27615
27616
	* commands/usbtest.c (grub_usb_get_string): Properly support UTF-16.
27617
27618
2010-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
27619
27620
	cmostest support.
27621
27622
	* commands/i386/cmostest.c: New file.
27623
	* conf/i386-coreboot.rmk (pkglib_MODULES): Add cmostest.mod.
27624
	(cmostest_mod_SOURCES): New variable.
27625
	(cmostest_mod_CFLAGS): Likewise.
27626
	(cmostest_mod_LDFLAGS): Likewise.
27627
	* conf/i386-pc.rmk: Likewise.
27628
	* docs/grub.texi (Vendor power-on keys): New section.
27629
	* util/grub-mkconfig.in: export GRUB_DEFAULT_BUTTON,
27630
	GRUB_HIDDEN_TIMEOUT_BUTTON, GRUB_TIMEOUT_BUTTON
27631
	and GRUB_BUTTON_CMOS_ADDRESS.
27632
	* util/grub.d/00_header.in: Handle powering-on by separate button.
27633
27634
2010-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
27635
27636
	* gfxmenu/gui_list.c (draw_menu): Don't add scrollbar width to padding.
27637
	Removed drawing_scrollbar argument. All users updated
27638
	Fixes #29792.
27639
	Reported by Jo Shields
27640
27641
2010-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
27642
27643
	* gfxmenu/view.c (grub_gfxmenu_draw_terminal_box): Apply only to current
27644
	buffer since gfxterm handles double repaint.
27645
27646
2010-05-23  Vladimir Serbinenko  <phcoder@gmail.com>
27647
27648
	* gfxmenu/gfxmenu.c (grub_gfxmenu_try): Change viewport on both buffers.
27649
	* term/gfxterm.c (real_scroll): Likewise.
27650
27651
2010-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
27652
27653
	* kern/i386/pc/mmap.c (grub_machine_mmap_iterate): Zero-fill entry
27654
	before calling BIOS.
27655
27656
2010-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
27657
27658
	* include/grub/i18n.h: Always enable grub_gettext.
27659
27660
2010-05-21  Vladimir Serbinenko  <phcoder@gmail.com>
27661
27662
	* kern/i386/pc/init.c (make_install_device): Fix a leftover usage of old
27663
	partition naming style.
27664
27665
2010-05-21  Colin Watson  <cjwatson@ubuntu.com>
27666
27667
	* util/grub-mkconfig.in: Fix handling of -o so that it works when
27668
	not the first option.
27669
27670
2010-05-20  Colin Watson  <cjwatson@ubuntu.com>
27671
27672
	* util/grub-mkrelpath.c (usage): Remove excess apostrophe.
27673
27674
2010-05-20  Colin Watson  <cjwatson@ubuntu.com>
27675
27676
	* util/misc.c: Move inclusion of <limits.h> to ...
27677
	* kern/emu/misc.c: ... here.  Needed for canonicalize_file_name.
27678
27679
2010-05-20  Grégoire Sutre  <gregoire.sutre@gmail.com>
27680
27681
	* kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev) [__NetBSD__]:
27682
	Fix merge error in NetBSD code.
27683
	(find_partition_start) [__NetBSD__]: Likewise.
27684
27685
2010-05-19  BVK Chaitanya  <bvk.groups@gmail.com>
27686
27687
	Fix grub-mkrescue usage unit testing.
27688
27689
	* tests/util/grub-shell.in: Use --grub-mkimage with grub-mkrescue.
27690
27691
2010-05-18  Christian Franke  <franke@computer.org>
27692
27693
	* util/grub.d/10_windows.in: Use path names instead of
27694
	drive letters to prevent warning from Cygwin 1.7.
27695
	Add drivemap command to menuentry if needed.
27696
27697
2010-05-18  Justus Winter  <4winter@informatik.uni-hamburg.de>
27698
27699
	* util/grub.d/10_hurd.in: Include all gnumach* kernels, not only
27700
	gnumach and gnumach.gz.
27701
27702
2010-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
27703
27704
	* include/grub/i18n.h (gettext): Inline instead of using #define.
27705
	(grub_gettext): Likewise.
27706
	(_): Likewise.
27707
27708
2010-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
27709
27710
	* Makefile.in (CPPFLAGS): Replace -DGRUB_LIBDIR with
27711
	-DGRUB_PKGLIBROOTDIR= and prepend @PACKAGE_TARNAME@. All users updated.
27712
	* util/grub-mkimage.c (image_targets): Add i386-multiboot.
27713
	(main): Add a slash after pkglibdirroot.
27714
27715
2010-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
27716
27717
	* util/grub-install.in: Add missing "in" keyword.
27718
27719
2010-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
27720
27721
	* util/grub-mkrescue.in: Remove -O i386-pc duplication.
27722
	Reported by: Seth Goldberg.
27723
27724
2010-05-18  Vladimir Serbinenko  <phcoder@gmail.com>
27725
27726
	* po/POTFILES: Rename util/grub-mkrawimage.c to util/grub-mkimage.c.
27727
27728
2010-05-18  Colin Watson  <cjwatson@ubuntu.com>
27729
27730
	* configure.ac: Check for Linux device-mapper support.
27731
27732
	* util/hostdisk.c (device_is_mapped): New function.
27733
	(find_partition_start): New function, partly broken out from
27734
	linux_find_partition and grub_util_biosdisk_get_grub_dev but with
27735
	device-mapper support added.
27736
	(linux_find_partition): Use find_partition_start.
27737
	(convert_system_partition_to_system_disk): Add `st' argument.
27738
	Support Linux /dev/mapper/* devices if device-mapper support is
27739
	available; only DM-RAID devices are understood at present.
27740
	(find_system_device): Add `st' argument.  Pass it to
27741
	convert_system_partition_to_system_disk.
27742
	(grub_util_biosdisk_get_grub_dev): Pass stat result to
27743
	find_system_device and convert_system_partition_to_system_disk.  Use
27744
	find_partition_start.
27745
27746
	* conf/common.rmk (grub_mkdevicemap_SOURCES): Add kern/env.c,
27747
	kern/err.c, kern/list.c, kern/misc.c, and kern/emu/mm.c.
27748
	* util/deviceiter.c [__linux__]: Define MINOR.
27749
	(grub_util_iterate_devices): Add support for DM-RAID disk devices.
27750
	* util/mkdevicemap.c (grub_putchar): New function.
27751
	(grub_getkey): New function.
27752
	(grub_refresh): New function.
27753
	(main): Set debug=all if -v -v is used.
27754
27755
2010-05-18  Colin Watson  <cjwatson@ubuntu.com>
27756
27757
	Fix build with non-GNU libcs.
27758
27759
	* util/misc.c (canonicalize_file_name): Move to ...
27760
	* kern/emu/misc.c (canonicalize_file_name): ... here.  Needed by
27761
	grub_make_system_path_relative_to_its_root.
27762
27763
2010-05-18  Colin Watson  <cjwatson@ubuntu.com>
27764
27765
	* util/grub-mkrescue.in: Sync up with grub-install in terms of how
27766
	we handle finding grub-mkimage.  Default to finding grub-mkimage in
27767
	${bindir} with program_transform_name applied, and provide a
27768
	--grub-mkimage option to override this.
27769
27770
2010-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
27771
27772
	Remove grub-mkisofs.
27773
27774
	* conf/common.rmk (bin_UTILITIES): Remove grub-mkisofs.
27775
	(grub_mkisofs_SOURCES): Removed.
27776
	(grub_mkisofs_CFLAGS): Removed.
27777
	* util/mkisofs/defaults.h: Removed.
27778
	* util/mkisofs/eltorito.c: Likewise.
27779
	* util/mkisofs/exclude.h: Likewise.
27780
	* util/mkisofs/hash.c: Likewise.
27781
	* util/mkisofs/include/: Likewise.
27782
	* util/mkisofs/include/fctldefs.h: Likewise.
27783
	* util/mkisofs/include/mconfig.h: Likewise.
27784
	* util/mkisofs/include/prototyp.h: Likewise.
27785
	* util/mkisofs/include/statdefs.h: Likewise.
27786
	* util/mkisofs/iso9660.h: Likewise.
27787
	* util/mkisofs/joliet.c: Likewise.
27788
	* util/mkisofs/match.c: Likewise.
27789
	* util/mkisofs/match.h: Likewise.
27790
	* util/mkisofs/mkisofs.c: Likewise.
27791
	* util/mkisofs/mkisofs.h: Likewise.
27792
	* util/mkisofs/msdos_partition.h: Likewise.
27793
	* util/mkisofs/multi.c: Likewise.
27794
	* util/mkisofs/name.c: Likewise.
27795
	* util/mkisofs/rock.c: Likewise.
27796
	* util/mkisofs/tree.c: Likewise.
27797
	* util/mkisofs/write.c: Likewise.
27798
27799
2010-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
27800
27801
	Unify grub-mkimage accross platforms.
27802
27803
	* Makefile.in (CPPFLAGS): Set GRUB_LIBDIR to $(libdir).
27804
	* conf/common.rmk (bin_UTILITIES): Removed grub-mkelfimage.
27805
	(grub_mkelfimage_SOURCES): Removed.
27806
	(util/elf/grub-mkimage.c_DEPENDENCIES): Renamed to ..
27807
	(util/grub-mkimage.c_DEPENDENCIES): .. this.
27808
	(bin_UTILITIES): Add grub-mkimage.
27809
	(grub_mkimage_SOURCES): New variable.
27810
	(kernel_img_HEADERS): Remove machine/kernel.h.
27811
	* conf/i386-pc.rmk (pkglib_IMAGES): Remove kernel.img.
27812
	(pkglib_PROGRAMS): Add kernel.img.
27813
	(kernel_img_HEADERS): Add machine/kernel.h.
27814
	(kernel_img_FORMAT): Removed.
27815
	(bin_UTILITIES): Remove grub-mkimage.
27816
	(grub_mkimage_SOURCES): Removed.
27817
	(grub_mkimage_CFLAGS): Likewise.
27818
	(util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
27819
	* conf/i386-qemu.rmk (pkglib_IMAGES): Remove kernel.img.
27820
	(pkglib_PROGRAMS): Add kernel.img.
27821
	(bin_UTILITIES): Remove grub-mkimage.
27822
	(grub_mkimage_SOURCES): Removed.
27823
	(grub_mkimage_CFLAGS): Likewise.
27824
	(util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
27825
	* conf/mips-qemu-mips.rmk (pkglib_IMAGES): Remove kernel.img.
27826
	(pkglib_PROGRAMS): Add kernel.img.
27827
	* conf/mips-yeeloong.rmk (pkglib_IMAGES): Remove kernel.img.
27828
	(pkglib_PROGRAMS): Add kernel.img.
27829
	* conf/mips.rmk (bin_UTILITIES): Remove grub-mkimage.
27830
	(grub_mkimage_SOURCES): Removed.
27831
	(grub_mkimage_CFLAGS): Likewise.
27832
	(util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
27833
	* conf/sparc64-ieee1275.rmk (pkglib_IMAGES): Remove kernel.img.
27834
	(pkglib_PROGRAMS): Add kernel.img.
27835
	(bin_UTILITIES): Remove grub-mkimage.
27836
	(grub_mkimage_SOURCES): Removed.
27837
	(grub_mkimage_CFLAGS): Likewise.
27838
	(util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
27839
	* conf/x86-efi.rmk (bin_UTILITIES): Remove grub-mkimage.
27840
	(grub_mkimage_SOURCES): Removed.
27841
	(grub_mkimage_CFLAGS): Likewise.
27842
	(util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
27843
	* configure.ac (machine_CFLAGS): Add "-DMACHINE".
27844
	* include/grub/efi/pe32.h (grub_pe32_optional_header): Split into ...
27845
	(grub_pe32_optional_header): ... this.
27846
	(grub_pe64_optional_header): ... and this. All users updated.
27847
	(GRUB_PE32_PE32_MAGIC): Split into ..
27848
	(GRUB_PE32_PE32_MAGIC): .. this.
27849
	(GRUB_PE32_PE64_MAGIC): .. and this.
27850
	(GRUB_PE32_SIGNATURE_SIZE): New definition.
27851
	* include/grub/elf.h (PT_GNU_STACK): New definition.
27852
	* include/grub/i386/coreboot/kernel.h: Merged into include/grub/offsets.h. All users updated.
27853
	* include/grub/i386/efi/kernel.h: Likewise.
27854
	* include/grub/i386/kernel.h: Likewise.
27855
	* include/grub/i386/pc/kernel.h: Likewise.
27856
	* include/grub/i386/qemu/boot.h: Likewise.
27857
	* include/grub/mips/kernel.h: Likewise.
27858
	* include/grub/mips/qemu-mips/kernel.h: Likewise.
27859
	* include/grub/powerpc/ieee1275/kernel.h: Likewise.
27860
	* include/grub/powerpc/kernel.h: Likewise.
27861
	* include/grub/sparc64/ieee1275/boot.h: Likewise.
27862
	* include/grub/sparc64/ieee1275/kernel.h: Likewise.
27863
	* include/grub/sparc64/kernel.h: Likewise.
27864
	* include/grub/x86_64/efi/kernel.h: Likewise.
27865
	* include/grub/x86_64/kernel.h: Likewise.
27866
	* include/grub/offsets.h: New file.
27867
	* include/grub/kernel.h (grub_module_info): Split into ...
27868
	(grub_module_info32): ... this.
27869
	(grub_module_info64): ... and this.
27870
	* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_KERNEL_SEG): Moved from here ...
27871
	* include/grub/offsets.h (GRUB_BOOT_I386_PC_KERNEL_SEG): ... here.
27872
	(grub_boot_blocklist): Moved from here ...
27873
	* include/grub/offsets.h (grub_pc_bios_boot_blocklist): ... here.
27874
	* include/grub/i386/pc/memory.h (GRUB_MEMORY_MACHINE_UPPER): Moved from here.
27875
	* include/grub/offsets.h (GRUB_MEMORY_I386_PC_UPPER): .. here.
27876
	* include/grub/types.h (grub_target_to_host16): Removed.
27877
	(grub_target_to_host32): Likewise.
27878
	(grub_target_to_host64): Likewise.
27879
	(grub_host_to_target16): Likewise.
27880
	(grub_host_to_target32): Likewise.
27881
	(grub_host_to_target64): Likewise.
27882
	(grub_host_to_target_addr): Likewise.
27883
27884
	Support grub-mkrescue for efi, coreboot and qemu.
27885
27886
	* conf/x86-efi.rmk (bin_SCRIPTS): Add grub-mkrescue.
27887
	* kern/efi/init.c (grub_efi_set_prefix): Handle baked in prefix.
27888
	* util/elf/grub-mkimage.c: Merged into util/grub-mkimage.c.
27889
	* util/grub-mkrawimage.c: Moved from here ...
27890
	* util/grub-mkimage.c: ... here. All users updated.
27891
	(ALIGN_ADDR): Use image_target.
27892
	(TARGET_NO_FIELD): New const.
27893
	(image_target_desc): New type.
27894
	(image_targets): New array.
27895
	(grub_target_to_host64): Use image_target.
27896
	(grub_target_to_host32): Likewise.
27897
	(grub_target_to_host16): Likewise.
27898
	(grub_host_to_target64): Likewise.
27899
	(grub_host_to_target32): Likewise.
27900
	(grub_host_to_target16): Likewise.
27901
	(grub_host_to_target_addr): Likewise.
27902
	(generate_image): Handle multiimage.
27903
	(main): Require -O parameter. All users updated.
27904
	* util/grub-mkimagexx.c: New file. Based on util/grub-mkrawimage.c and
27905
	util/efi/grub-mkimage.c
27906
	* util/grub-mkrescue.in: Handle coreboot, efi and qemu.
27907
	New option --rom-directory.
27908
	Use xorriso.
27909
	* util/i386/efi/grub-mkimage.c: Removed.
27910
	* util/i386/pc/grub-setup.c (grub_target_to_host16): New definition.
27911
	(grub_target_to_host32): Likewise.
27912
	(grub_target_to_host64): Likewise.
27913
	(grub_host_to_target16): Likewise.
27914
	(grub_host_to_target32): Likewise.
27915
	(grub_host_to_target64): Likewise.
27916
	* util/sparc64/ieee1275/grub-setup.c (grub_target_to_host16): New definition.
27917
	(grub_target_to_host32): Likewise.
27918
	(grub_target_to_host64): Likewise.
27919
	(grub_host_to_target16): Likewise.
27920
	(grub_host_to_target32): Likewise.
27921
	(grub_host_to_target64): Likewise.
27922
27923
2010-05-17  BVK Chaitanya  <bvk.groups@gmail.com>
27924
27925
	Source tree is reorganized for emu build.
27926
27927
	* include/grub/util/console.h: Move from here...
27928
	* include/grub/emu/console.h: ...to here.
27929
	* include/grub/util/getroot.h: Move from here...
27930
	* include/grub/emu/getroot.h: ...to here.
27931
	* include/grub/util/hostdisk.h: Move from here...
27932
	* include/grub/emu/hostdisk.h: ...to here.
27933
	* util/console.c: Move from here...
27934
	* kern/emu/console.c: ...to here.
27935
	* util/getroot.c: Move from here...
27936
	* kern/emu/getroot.c: ...to here.
27937
	* util/grub-emu.c: Move from here...
27938
	* kern/emu/main.c: ...to here.
27939
	* util/hostdisk.c: Move from here...
27940
	* kern/emu/hostdisk.c: ...to here.
27941
	* util/hostfs.c: Move from here...
27942
	* kern/emu/hostfs.c: ...to here.
27943
	* util/mm.c: Move from here...
27944
	* kern/emu/mm.c: ...to here.
27945
	* util/pci.c: Move from here...
27946
	* bus/emu/pci.c: ...to here.
27947
	* util/sdl.c: Move from here...
27948
	* video/emu/sdl.c: ...to here.
27949
	* util/time.c: Move from here...
27950
	* kern/emu/time.c: ...to here.
27951
	* util/usb.c: Move from here...
27952
	* bus/usb/emu/usb.c: ...to  here.
27953
27954
	* include/grub/emu/misc.h: New header for grub-emu functions.
27955
	* kern/emu/misc.c: grub-emu functions separated from util/misc.c
27956
27957
	* conf/any-emu.rmk: Rule updates for above renames.
27958
	* conf/common.rmk: Likewise.
27959
	* conf/i386-pc.rmk: Likewise.
27960
	* conf/i386-qemu.rmk: Likewise.
27961
	* conf/mips.rmk: Likewise.
27962
	* conf/sparc64-ieee1275.rmk: Likewise.
27963
	* conf/x86-efi.rmk: Likewise.
27964
27965
	* disk/lvm.h: #include updates for above renames.
27966
	* util/grub-mkrelpath.c: Likewise.
27967
	* util/grub-probe.c: Likewise.
27968
	* util/i386/pc/grub-setup.c: Likewise.
27969
	* util/sparc64/ieee1275/grub-setup.c: Likewise.
27970
	* kern/emu/console.c: Likewise.
27971
	* kern/emu/getroot.c: Likewise.
27972
	* kern/emu/hostdisk.c: Likewise.
27973
	* kern/emu/main.c: Likewise. (was grub-emu.c earlier)
27974
27975
	* include/grub/dl.h: Remove grub_dl_{ref,unref}.
27976
	* include/grub/util/misc.h: Move grub-emu functions to emu/misc.h.
27977
	* kern/dl.c: Handle null mod in grub_dl_{ref,unref}.
27978
	* util/misc.c: Remove grub-emu functions.
27979
27980
2010-05-13  Vladimir Serbinenko  <phcoder@gmail.com>
27981
27982
	Fix gfxmenu crash.
27983
	Reported by: Thorsten Grützmacher.
27984
27985
	* gfxmenu/gui_circular_progress.c (circprog_destroy): Unregister
27986
	timeout hook.
27987
	(circprog_set_property): Register and unregister timeout hook.
27988
	* gfxmenu/gui_label.c (grub_gui_label): New fields template and value.
27989
	(label_destroy): Free template. and unregister hook.
27990
	(label_set_state): New function.
27991
	(label_set_property): Handle templates and hooks.
27992
	* gfxmenu/gui_progress_bar.c (progress_bar_destroy): Unregister
27993
	timeout hook.
27994
	(progress_bar_set_property): Register and unregister timeout hook.
27995
	* gfxmenu/view.c (TIMEOUT_COMPONENT_ID): Move from here ...
27996
	* include/grub/gui.h (GRUB_GFXMENU_TIMEOUT_COMPONENT_ID): ...to here
27997
	* gfxmenu/view.c (grub_gfxmenu_timeout_notifications): New variable.
27998
	(update_timeout_visit): Removed.
27999
	(update_timeouts): New function.
28000
	(redraw_timeouts): Likewise.
28001
	(grub_gfxmenu_print_timeout): Use update_timeouts and redraw_timeouts.
28002
	(grub_gfxmenu_clear_timeout): Likewise.
28003
	* include/grub/gui.h (grub_gfxmenu_set_state_t): New type.
28004
	(grub_gfxmenu_timeout_notify): Likewise.
28005
	(grub_gfxmenu_timeout_notifications): New external variable.
28006
	(grub_gfxmenu_timeout_register): New function.
28007
	(grub_gfxmenu_timeout_unregister): Likewise.
28008
28009
2010-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
28010
28011
	Transform (broken) vga terminal into (working) vga video driver.
28012
28013
	* conf/i386-pc.rmk (vga_mod_SOURCES): Change term/i386/pc/vga.c to
28014
	video/i386/pc/vga.c.
28015
	* include/grub/video.h (grub_video_driver_id):
28016
	Add GRUB_VIDEO_DRIVER_VGA.
28017
	* term/i386/pc/vga.c: Renamed to ...
28018
	* video/i386/pc/vga.c: ...this
28019
	(DEBUG_VGA): Removed.
28020
	(CHAR_WIDTH): Likewise.
28021
	(CHAR_HEIGHT): Likewise.
28022
	(TEXT_WIDTH): Likewise.
28023
	(TEXT_HEIGHT): Likewise.
28024
	(DEFAULT_FG_COLOR): Likewise.
28025
	(DEFAULT_BG_COLOR): Likewise.
28026
	(colored_char): Likewise.
28027
	(xpos): Likewise.
28028
	(ypos): Likewise.
28029
	(cursor_state): Likewise.
28030
	(fg_color): Likewise.
28031
	(bg_color): Likewise.
28032
	(text_buf): Likewise.
28033
	(page): Likewise.
28034
	(font): Likewise.
28035
	(framebuffer): New variable.
28036
	(set_read_map): Disabled.
28037
	(setup): New variable.
28038
	(is_target): Likewise.
28039
	(grub_vga_mod_init): Likewise.
28040
	(grub_vga_mod_fini): Likewise.
28041
	(check_vga_mem): Likewise.
28042
	(write_char): Likewise.
28043
	(write_cursor): Likewise.
28044
	(scroll_up): Likewise.
28045
	(grub_vga_putchar): Likewise.
28046
	(grub_vga_getcharwidth): Likewise.
28047
	(grub_vga_getwh): Likewise.
28048
	(grub_vga_getxy): Likewise.
28049
	(grub_vga_gotoxy): Likewise.
28050
	(grub_vga_cls): Likewise.
28051
	(grub_vga_setcolorstate): Likewise.
28052
	(grub_vga_setcursor): Likewise.
28053
	(grub_video_vga_init): New function.
28054
	(grub_video_vga_setup): Likewise.
28055
	(grub_video_vga_fini): Likewise.
28056
	(update_target): Likewise.
28057
	(grub_video_vga_blit_bitmap): Likewise.
28058
	(grub_video_vga_blit_render_target): Likewise.
28059
	(grub_video_vga_set_active_render_target): Likewise.
28060
	(grub_video_vga_get_active_render_target): Likewise.
28061
	(grub_video_vga_swap_buffers): Likewise.
28062
	(grub_video_vga_set_palette): Likewise.
28063
	(grub_video_vga_get_info_and_fini): Likewise.
28064
	(grub_vga_term): Removed.
28065
	(grub_video_vga_adapter): New variable.
28066
	(GRUB_MOD_INIT): Register a video driver instead of terminal.
28067
	(GRUB_MOD_FINI): Unrefister a video driver instead of terminal.
28068
28069
2010-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
28070
28071
	* video/readers/jpeg.c: Indented.
28072
28073
2010-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
28074
28075
	Various jpeg cleanups.
28076
28077
	* video/readers/jpeg.c (grub_jpeg_get_huff_code): Use ARRAY_SIZE.
28078
	(grub_jpeg_decode_quan_table): Use sizeof.
28079
	(grub_jpeg_decode_du): Use ARRAY_SIZE.
28080
28081
2010-05-05  Peter Hurley <No e-mail available> (tiny change)
28082
28083
	* video/readers/jpeg.c (grub_jpeg_decode_huff_table): Loop over all
28084
	tables. Ignore non-last ac bit.
28085
	(grub_jpeg_decode_quan_table): Likewise.
28086
28087
2010-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
28088
28089
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value
28090
	GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM.
28091
	* kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
28092
	GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM on qemu.
28093
	* kern/ieee1275/init.c (grub_claim_heap): Don0t allocate below
28094
	1.5MiB if GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM is set.
28095
28096
2010-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
28097
28098
	* term/ieee1275/ofconsole.c (grub_ofconsole_getkey): Fix off-by-one
28099
	error.
28100
28101
2010-05-05  Vladimir Serbinenko  <phcoder@gmail.com>
28102
28103
	* term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Support C0 code.
28104
28105
2010-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
28106
28107
	* commands/parttool.c (grub_cmd_parttool): Fix #if !GRUB_NO_MODULES
28108
	condition.
28109
28110
2010-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
28111
28112
	* kern/mm.c (grub_real_malloc): Put magic and size assignment in common
28113
	part.
28114
28115
2010-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
28116
28117
	* kern/mm.c (grub_mm_init_region): Check for region size after aligning
28118
	pointers.
28119
28120
2010-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
28121
28122
	* kern/mm.c (grub_real_malloc): Fix size calculation when extra == 0.
28123
28124
2010-05-01  Christian Franke  <franke@computer.org>
28125
28126
	* util/grub-mkconfig_lib.in (make_system_path_relative_to_its_root):
28127
	Remove broken Cygwin path conversion.
28128
	* util/misc.c: [__CYGWIN__] Add include and define.
28129
	[__CYGWIN__] (get_win32_path): Copy function from getroot.c, modify
28130
	for Cygwin 1.7.
28131
	(make_system_path_relative_to_its_root): Simplify loop, replace early
28132
	return by break.
28133
	[__CYGWIN__] Add conversion to win32 path.
28134
	Include "/" case in trailing slash removal.
28135
28136
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28137
28138
	* kern/main.c (grub_load_config): Fix copy-pasted comment.
28139
	Reported by: Seth Goldberg
28140
28141
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28142
28143
	* commands/help.c (grub_cmd_help): Fix a typo.
28144
	Reported by: Seth Goldberg
28145
28146
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28147
28148
	* commands/hashsum.c (GRUB_MOD_INIT): Remove duplication of command
28149
	name and add N_.
28150
	* commands/i386/pc/drivemap.c (GRUB_MOD_INIT): Likewise.
28151
	* commands/iorw.c (GRUB_MOD_INIT): Likewise.
28152
	* commands/password_pbkdf2.c (GRUB_MOD_INIT): Likewise.
28153
	* commands/regexp.c (GRUB_MOD_INIT): Likewise.
28154
	* commands/setpci.c (GRUB_MOD_INIT): Likewise.
28155
	* commands/terminal.c (GRUB_MOD_INIT): Likewise.
28156
	* efiemu/main.c (GRUB_MOD_INIT): Likewise.
28157
	* font/font_cmd.c (GRUB_MOD_INIT): Likewise.
28158
	* kern/corecmd.c (GRUB_MOD_INIT): Likewise.
28159
	* mmap/mmap.c (GRUB_MOD_INIT): Likewise.
28160
	* normal/context.c (GRUB_MOD_INIT): Likewise.
28161
	* normal/main.c (GRUB_MOD_INIT): Likewise.
28162
	* term/gfxterm.c (GRUB_MOD_INIT): Likewise.
28163
	* term/serial.c (GRUB_MOD_INIT): Likewise.
28164
	* term/terminfo.c (GRUB_MOD_INIT): Likewise.
28165
28166
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28167
28168
	* kern/mm.c (grub_real_malloc): Satisfy alignment requirement when
28169
        extra == 0.
28170
28171
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28172
28173
	* commands/iorw.c: New file.
28174
	* conf/i386.rmk (pkglib_MODULES): Add iorw.mod.
28175
	(iorw_mod_SOURCES): New variable.
28176
	(iorw_mod_CFLAGS): Likewise.
28177
	(iorw_mod_LDFLAGS): Likewise.
28178
28179
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28180
28181
	Hotkey support
28182
28183
	* include/grub/menu.h (grub_menu_entry): New field 'hotkey'.
28184
	* normal/main.c (hotkey_aliases): New variable.
28185
	(grub_normal_add_menu_entry): Parse "--hotkey".
28186
	* normal/menu_text.c (run_menu): Handle hotkeys.
28187
28188
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28189
28190
	* kern/i386/coreboot/init.c (grub_machine_init): Call
28191
	grub_machine_mmap_init on qemu.
28192
28193
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28194
28195
	* boot/i386/qemu/boot.S: Add a missing .code16.
28196
28197
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28198
28199
	Use LBIO on coreboot.
28200
28201
	* conf/i386-coreboot.rmk (kernel_img_SOURCES): Change
28202
	kern/i386/multiboot_mmap.c to kern/i386/coreboot/mmap.c.
28203
	* include/grub/i386/coreboot/memory.h (GRUB_LINUXBIOS_MEMBER_LINK):
28204
	New declaration.
28205
	* kern/i386/coreboot/init.c (grub_machine_init): Don't call
28206
	grub_machine_mmap_init on coreboot.
28207
	* kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate): Handle
28208
	GRUB_LINUXBIOS_MEMBER_LINK.
28209
	(grub_machine_mmap_iterate): Fix declaration.
28210
	* kern/i386/coreboot/startup.S: Don't save mbi location on coreboot.
28211
28212
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28213
28214
	Split coreboot and multiboot ports.
28215
28216
	* conf/i386-multiboot.rmk: New file.
28217
	* configure.ac: Add multiboot port.
28218
	* include/grub/i386/multiboot/boot.h: New file.
28219
	* include/grub/i386/multiboot/console.h: Likewise.
28220
	* include/grub/i386/multiboot/init.h: Likewise.
28221
	* include/grub/i386/multiboot/kernel.h: Likewise.
28222
	* include/grub/i386/multiboot/loader.h: Likewise.
28223
	* include/grub/i386/multiboot/memory.h: Likewise.
28224
	* include/grub/i386/multiboot/serial.h: Likewise.
28225
	* include/grub/i386/multiboot/time.h: Likewise.
28226
	* include/grub/multiboot.h: Add GRUB_MACHINE_MULTIBOOT to ifdef.
28227
	* loader/multiboot.c: Likewise.
28228
	* loader/multiboot_mbi2.c: Likewise.
28229
	* util/grub-mkrescue.in: Generate multiboot rescue.
28230
28231
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28232
28233
	* kern/parser.c (grub_parser_execute): Cope with read-only config.
28234
28235
2010-05-01  Vladimir Serbinenko  <phcoder@gmail.com>
28236
28237
	Merge handling of input and output terminals. Fix a hang.
28238
28239
	* commands/terminal.c (abstract_terminal): New struct.
28240
	(handle_command): New function. Based on grub_cmd_terminal_input.
28241
	(grub_cmd_terminal_input): Use handle_command.
28242
	(grub_cmd_terminal_output): Use handle_command.
28243
28244
2010-05-01  BVK Chaitanya  <bvk.groups@gmail.com>
28245
28246
	Fix comment handling.
28247
28248
	* tests/grub_script_comments.in: New testcase.
28249
	* conf/tests.rmk: Rules for new testcase.
28250
	* script/yylex.l: Updated flex rules.
28251
28252
2010-04-28  Samuel Thibault  <samuel.thibault@ens-lyon.org>
28253
28254
	* docs/grub.texi (play): Document that zero pitches produce rests.
28255
	* commands/i386/pc/play.c (grub_cmd_play): Call 'grub_file_open' only
28256
	if argc is 1.
28257
28258
2010-04-27  Vladimir Serbinenko  <phcoder@gmail.com>
28259
28260
	* conf/x86-efi.rmk (linux_mod_SOURCES): Write explicitly to avoid
28261
	autogen issues.
28262
28263
2010-04-26  Christian Franke  <franke@computer.org>
28264
28265
	* include/grub/util/getroot.h (grub_get_prefix): Remove prototype.
28266
	* util/getroot.c [__CYGWIN__] (get_win32_path): Remove function.
28267
	(grub_get_prefix): Remove function.
28268
	* util/grub-emu.c (main): Replace grub_get_prefix () call by
28269
	make_system_path_relative_to_its_root ().
28270
	* util/sparc64/ieee1275/grub-setup.c (main): Likewise.
28271
28272
2010-04-24  Christian Franke  <franke@computer.org>
28273
28274
	* Makefile.in (TARGET_LDFLAGS): Add -static-libgcc.
28275
	(kernel_img_LDFLAGS): Remove -static-libgcc.
28276
28277
2010-04-24  Christian Franke  <franke@computer.org>
28278
28279
	* configure.ac: Do not CHECK_BSS_START_SYMBOL
28280
	and CHECK_END_SYMBOL if grub-emu is built.
28281
	Unset TARGET_OBJ2ELF if grub-emu is built
28282
	without module support.
28283
28284
2010-04-24  Jiro SEKIBA <jir@unicus.jp>
28285
28286
	Nilfs2 support.
28287
28288
	* conf/common.rmk (grub_probe_SOURCES): Add fs/nilfs2.c.
28289
	(grub_fstest_SOURCES): Likewise.
28290
	(pkglib_MODULES): Add nilfs2.mod.
28291
	(nilfs2_mod_SOURCES): New variable.
28292
	(nilfs2_mod_CFLAGS): Likewise.
28293
	(nilfs2_mod_LDFLAGS): Likewise.
28294
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
28295
	* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
28296
	* fs/nilfs2.c: New file.
28297
28298
2010-04-21  Vladimir Serbinenko  <phcoder@gmail.com>
28299
28300
	* configure.ac: Refuse to compile for x86_64-efi is mcmodel=large
28301
	is not supported.
28302
28303
2010-04-19  Grégoire Sutre  <gregoire.sutre@gmail.com>
28304
28305
	Add grub-mkconfig support for NetBSD.
28306
28307
	* util/grub.d/10_netbsd.in: grub-mkconfig helper script for NetBSD.
28308
	* util/grub-mkconfig.in: export new NetBSD specific variables.
28309
	* po/POTFILES-shell: added 10_netbsd.in.
28310
	* util/grub-mkconfig_lib.in: check for gettext binary, default to echo.
28311
28312
2010-04-19  BVK Chaitanya  <bvk.groups@gmail.com>
28313
28314
	Fix emu build with grub-emu-pci and grub-emu-modules.
28315
28316
	* include/grub/util/misc.h: Export grub_util_{info,error,warn}
28317
	functions.
28318
	* include/grub/libpciaccess.h: New file.
28319
	* conf/any-emu.rmk: Update kernel headers for emu build.
28320
28321
2010-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
28322
28323
	* fs/udf.c (grub_udf_iterate_dir): Silence a spurious warning.
28324
28325
2010-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
28326
28327
	* fs/udf.c (grub_udf_iterate_dir): Decode the Unicode filenames.
28328
28329
2010-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
28330
28331
	* boot/sparc64/ieee1275/boot.S: Various size-reducing changes.
28332
	Retrieve chosen/bootpath if bootpath isn't hardcoded.
28333
	* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add
28334
	util/ieee1275/ofpath.c.
28335
	* util/sparc64/ieee1275/grub-ofpathname.c: Renamed to ...
28336
	* util/ieee1275/grub-ofpathname.c: ... this. All users updated
28337
	* include/grub/sparc64/ieee1275/boot.h
28338
	(GRUB_BOOT_MACHINE_KERNEL_SECTOR): Renamed to ...
28339
	(GRUB_BOOT_MACHINE_KERNEL_BYTE): ...this. Moved 8 bytes lower.
28340
	* util/hostdisk.c (grub_util_biosdisk_get_osdev): New function.
28341
	* util/ieee1275/ofpath.c (grub_util_devname_to_ofpath): Make argument
28342
	const char *.
28343
	* util/sparc64/ieee1275/grub-setup.c (compute_dest_ofpath): Removed.
28344
	(setup): Use KERNEL_BYTE instead of KERNEL_SECTOR.
28345
	Use grub_util_devname_to_ofpath. Zero-fill boot_devpath on same disk
28346
	install.
28347
28348
2010-04-18  Grégoire Sutre  <gregoire.sutre@gmail.com>
28349
28350
	* util/grub-mkconfig.in: Corrected two == equality tests.
28351
	Set grub_prefix as in grub-install for NetBSD and OpenBSD.
28352
	* configure.ac: All definitions and uses of TARGET_IMG_LDFLAGS_AC now
28353
	expect a number appended to it.
28354
	* acinclude.m4 (grub_PROG_OBJCOPY_ABSOLUTE): ${TARGET_IMG_LDFLAGS_AC}
28355
	expects a number appended to it.
28356
28357
2010-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
28358
28359
	* po/POTFILES: Renamed multiboot_loader.c to multiboot.c
28360
28361
2010-04-18  Vladimir Serbinenko  <phcoder@gmail.com>
28362
28363
	* util/hostdisk.c (make_device_name): Change to new partition naming.
28364
28365
2010-04-17  Vladimir Serbinenko  <phcoder@gmail.com>
28366
28367
	* disk/lvm.c (grub_lvm_memberlist): Issue an error if pv->disk = 0.
28368
28369
2010-04-17  Christian Franke  <franke@computer.org>
28370
28371
	* Makefile.in: Add missing localedir setting.
28372
28373
2010-04-14  Colin Watson  <cjwatson@ubuntu.com>
28374
28375
	Restore TEXTDOMAINDIR correction from r1889, lost apparently by
28376
	mistake in r2156.  Noticed by Anthony Fok.
28377
28378
	* util/grub.d/10_kfreebsd.in (TEXTDOMAINDIR): Set to lowercased
28379
	@localedir@.
28380
	* util/grub.d/10_linux.in (TEXTDOMAINDIR): Likewise.
28381
28382
2010-04-14  BVK Chaitanya  <bvk.groups@gmail.com>
28383
28384
	Fix a spurious, uninitialized variable warning.
28385
28386
	* loader/i386/bsdXX.c (grub_freebsd_load_elfmodule_obj):
28387
	Initialize variable, shdr.
28388
	(grub_freebsd_load_elfmodule): Likewise.
28389
	(grub_freebsd_load_elf_meta): Likewise.
28390
28391
2010-04-13  BVK Chaitanya  <bvk.groups@gmail.com>
28392
28393
	Fix for escaped dollar in double quoted strings.
28394
28395
	* script/yylex.l: Updated flex rules.
28396
	* conf/tests.rmk: Rule for new testcase.
28397
	* tests/grub_script_dollar.in: New testcase.
28398
28399
2010-04-13  Carles Pina i Estany  <carles@pina.cat>
28400
2010-04-13  Colin Watson  <cjwatson@ubuntu.com>
28401
28402
	Enclose all translated strings in grub.cfg in single quotes, and
28403
	escape them appropriately (Ubuntu bug #552921).
28404
28405
	* util/grub-mkconfig_lib.in (gettext_quoted): New function.
28406
	* util/grub.d/10_hurd.in: Use it.
28407
	* util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise.
28408
	* util/grub.d/10_linux.in (linux_entry): Likewise.
28409
28410
2010-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
28411
28412
	Fix cygwin compilation.
28413
28414
	* configure.ac: Define NEED_REGISTER_FRAME_INFO.
28415
	* include/grub/misc.h (__register_frame_info)
28416
	[NEED_REGISTER_FRAME_INFO && !UTIL]: New export.
28417
	(__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
28418
	* kern/misc.c (__register_frame_info)
28419
	[NEED_REGISTER_FRAME_INFO && !UTIL]: New empty function.
28420
	(__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
28421
28422
2010-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
28423
28424
	* configure.ac: Respect grub_cv_asm_uscore when defining dummy symbols.
28425
28426
2010-04-11  Vladimir Serbinenko  <phcoder@gmail.com>
28427
28428
	Unify libgcc processing.
28429
28430
	* Makefile.in (kernel_img_LDFLAGS): New variable.
28431
	* conf/common.rmk (kernel_img_HEADERS): Add libgcc.h.
28432
	* conf/i386-coreboot.rmk (kernel_img_LDFLAGS): Append instead of
28433
	overwriting.
28434
	* conf/i386-ieee1275.rmk (kernel_img_LDFLAGS): Likewise.
28435
	* conf/i386-pc.rmk (kernel_img_LDFLAGS): Likewise.
28436
	* conf/i386-qemu.rmk (kernel_img_LDFLAGS): Likewise.
28437
	* conf/x86-efi.rmk (kernel_img_LDFLAGS): Likewise.
28438
	* conf/mips-qemu-mips.rmk (kernel_img_LDFLAGS): Append instead of
28439
	overwriting. Remove -lgcc and -static-libgcc
28440
	* conf/mips-yeeloong.rmk (kernel_img_LDFLAGS): Likewise.
28441
	* conf/mips.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
28442
	* conf/powerpc-ieee1275.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
28443
	(kernel_img_LDFLAGS): Append instead of overwriting.
28444
	Remove -lgcc and -static-libgcc
28445
	* conf/sparc64-ieee1275.rmk: Likewise.
28446
	* include/grub/powerpc/libgcc.h: Move to ...
28447
	* include/grub/libgcc.h: .. this.
28448
	* include/grub/libgcc.h: Don't export most of the function on x86.
28449
	(__bswapsi2): New export.
28450
	(__bswapdi2): Likewise.
28451
	* include/grub/mips/libgcc.h: Removed.
28452
	* include/grub/sparc64/libgcc.h: Likewise.
28453
28454
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
28455
28456
	* util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Remove
28457
	disk_info_msg (conflicts with gettexting into languages with cases).
28458
28459
2010-04-10  Grégoire Sutre  <gregoire.sutre@gmail.com>
28460
28461
	Add grub-probe support for NetBSD.
28462
28463
	* util/getroot.c (find_root_device): Convert block device to
28464
	character device on NetBSD.
28465
	* util/probe.c (probe): Require character device on NetBSD.
28466
	* util/hostdisk.c: NetBSD specific headers.
28467
	(configure_device_driver): new function to tune device driver
28468
	parameters (currently only for NetBSD floppy driver).
28469
	(grub_util_biosdisk_open): NetBSD specific code (get disk size
28470
	via disklabel ioctl).
28471
	(open_device): call configure_device_driver on NetBSD.
28472
	(convert_system_partition_to_system_disk): NetBSD specific code.
28473
	(device_is_wholedisk): Likewise.
28474
	(grub_util_biosdisk_get_grub_dev): Likewise.
28475
	(make_device_name): Fixed a typo in bsd_part_str.
28476
	* configure.ac: check for opendisk() and getrawpartition() on
28477
	NetBSD and set LIBUTIL.
28478
	* Makefile.in: add LIBUTIL to LIBS.
28479
28480
2010-04-10  BVK Chaitanya  <bvk.groups@gmail.com>
28481
28482
	Documentation fix.
28483
28484
	* util/grub-script-check.c: Better help message.
28485
28486
2010-04-10  BVK Chaitanya  <bvk.groups@gmail.com>
28487
28488
	Fix FreeBSD build.
28489
28490
	* configure.ac: Flex version check.
28491
	* conf/common.rmk: Add -Wno-error to sh.mod.
28492
	* script/yylex.l: Remove all #pragma.
28493
28494
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
28495
28496
	* include/grub/util/misc.h (canonicalise_file_name): Add missing
28497
	prototype.
28498
	Reported by: Seth Goldberg.
28499
28500
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
28501
28502
	* loader/multiboot.c (GRUB_MOD_INIT) [GRUB_USE_MULTIBOOT2]:
28503
	Rename "module" to "module2".
28504
	Reported by: Seth Goldberg.
28505
28506
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
28507
28508
	* include/grub/efi/memory.h (grub_machine_mmap_iterate): Remove
28509
	EXPORT_FUNC.
28510
	Reported by: Seth Goldberg.
28511
28512
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
28513
28514
	* lib/posix_wrap/locale.h: Add missing file.
28515
	Reported by: Seth Goldberg.
28516
28517
2010-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
28518
28519
	grub-emu module load support.
28520
28521
	* Makefile.in (TARGET_NO_MODULES): New variable. All users of
28522
	NO_DYNAMIC_MODULES switched to this.
28523
	(TARGET_CFLAGS): Add -DGRUB_TARGET_NO_MODULES=1 if applicable.
28524
	(CFLAGS): Likewise.
28525
	* conf/any-emu.rmk: Generate symlist.
28526
	(kernel_img_HEADERS): Add util/datetime.h.
28527
	(kernel_img_HEADERS) [sdl]: Add sdl.h.
28528
	(kernel_img_HEADERS) [libusb]: Add libusb.h.
28529
	(kernel_img_SOURCES) [TARGET_NO_MODULES = no && !x86]: Add
28530
	kern/$(target_cpu)/cache.S.
28531
	* configure.ac (grub-emu-modules): New option.
28532
	* genmk.rb: Handle multiple source lists.
28533
	* include/grub/sdl.h: New file.
28534
	* include/grub/libusb.h: Likewise.
28535
	* util/grub-emu.c (main): Hanle (host) root.
28536
	* util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Error with
28537
	GRUB_ERR_UNKNOWN_DEVICE.
28538
	* util/misc.c: Move mm functions to ...
28539
	* util/mm.c: ... here. All users updated.
28540
28541
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
28542
28543
	* Makefile.in (RMKFILES): Search in srcdir and not current directory.
28544
	(MAINTAINER_CLEANFILES): Don't add $(srcdir) to MKFILES. Add few
28545
	missing files.
28546
	(maintainer-clean): Remove libgcrypt-grub.
28547
28548
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
28549
28550
	* term/efi/console.c (grub_console_checkkey): Macroify key contants.
28551
28552
2010-04-09  EFI Coder <eficoder@hotmail.com>
28553
28554
	* normal/menu_text.c (print_message): Clean up the message and show
28555
	the Fn information when on EFI
28556
	* term/efi/console.c (grub_console_checkkey): Add F4 support.
28557
28558
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
28559
28560
	* normal/autofs.c (read_fs_list): New parameter 'prefix'.
28561
	All users updated.
28562
	* normal/crypto.c (read_crypto_list): Likewise.
28563
	* normal/dyncmd.c (read_command_list): Likewise.
28564
	* normal/term.c (read_terminal_list): Likewise.
28565
	* normal/main.c (read_lists): Use explicit prefix.
28566
	(read_lists_hook): Use read_lists.
28567
	(grub_normal_execute): Likewise.
28568
28569
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
28570
28571
	* util/grub-mkrescue.in: Fix incorrect path in coreboot part.
28572
	Reported by: Thomas Schmitt.
28573
	Add -no-emul-boot to grub-mkisofs parameters.
28574
28575
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
28576
28577
	* font/font.c: Indented.
28578
28579
2010-04-09  BVK Chaitanya  <bvk.groups@gmail.com>
28580
28581
	Elif support to GRUB script (by Deepak Vankadaru).
28582
28583
	* tests/grub_script_if.in: New testcase.
28584
	* conf/tests.rmk: Rule for new testcase.
28585
	* script/parser.y: Grammar rules for elif.
28586
28587
2010-04-09  BVK Chaitanya  <bvk.groups@gmail.com>
28588
28589
	While and until loops support to GRUB script.
28590
28591
	* include/grub/script_sh.h (grub_script_cmdwhile): New struct.
28592
	(grub_script_create_cmdwhile): New function prototype.
28593
	(grub_script_execute_cmdwhile): New function prototype.
28594
	* script/execute.c (grub_script_execute_cmdwhile): New function.
28595
	* script/parser.y (command): New commands.
28596
	(whilecmd): New grammar rule.
28597
	(untilcmd): New grammar rule.
28598
	* script/script.c (grub_script_create_cmdwhile): New function.
28599
	* util/grub-script-check.c (grub_script_execute_cmdwhile): New
28600
	function.
28601
28602
	* tests/grub_script_while1.in: New testcase.
28603
	* conf/tests.rmk: Rule for new testcase.
28604
28605
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
28606
28607
	* util/grub.d/00_header.in: Add few missing quotes. Recognise *.jpeg
28608
	as *.jpg.
28609
28610
2010-04-09  Mario Vazquez <mariovazq@gmail.com>
28611
28612
	GRUB_BACKGROUND support.
28613
28614
	* util/grub-mkconfig.in: Export GRUB_BACKGROUND.
28615
	* util/grub.d/00_header.in: Parse GRUB_BACKGROUND.
28616
28617
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
28618
28619
	Load fonts and modules for gfxmenu in grub-mkconfig.
28620
	Idea by: Mario Vazquez
28621
28622
	* util/grub.d/00_header.in: Load pf2 and image modules.
28623
28624
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
28625
28626
	grub-mkconfig multiple terminal support.
28627
28628
	* util/grub-mkconfig.in: Handle multiple terminals correctly.
28629
	* util/grub.d/00_header.in: Likewise.
28630
28631
2010-04-09  Vladimir Serbinenko  <phcoder@gmail.com>
28632
28633
	* Makefile.in: Specify files explicitly instead of using $< and $@ since
28634
	we use cd $(srcdir).
28635
28636
2010-04-08  Colin Watson  <cjwatson@ubuntu.com>
28637
28638
	* util/grub.d/10_linux.in: Only use the first word of
28639
	GRUB_DISTRIBUTOR for --class, to avoid problems if somebody puts
28640
	spaces in GRUB_DISTRIBUTOR.
28641
	* util/grub.d/10_kfreebsd.in: Likewise.
28642
	* util/grub.d/10_hurd.in: Likewise.
28643
28644
2010-04-06  BVK Chaitanya  <bvk.groups@gmail.com>
28645
28646
	Fix unit testing framework for Qemu 0.12.
28647
28648
	* tests/util/grub-shell.in: Remove -serial stdio option.
28649
28650
2010-04-06  Vladimir Serbinenko  <phcoder@gmail.com>
28651
28652
	POSIX header file wrappers.
28653
28654
	* lib/posix_wrap/assert.h: New file. Wrapper for its POSIX
28655
	equivalents.
28656
	* lib/posix_wrap/ctype.h: Likewise.
28657
	* lib/posix_wrap/errno.h: Likewise.
28658
	* lib/posix_wrap/langinfo.h: Likewise.
28659
	* lib/posix_wrap/limits.h: Likewise.
28660
	* lib/posix_wrap/localcharset.h: Likewise.
28661
	* lib/posix_wrap/stdint.h: Likewise.
28662
	* lib/posix_wrap/stdio.h: Likewise.
28663
	* lib/posix_wrap/stdlib.h: Likewise.
28664
	* lib/posix_wrap/string.h: Likewise.
28665
	* lib/posix_wrap/sys/types.h: Likewise.
28666
	* lib/posix_wrap/unistd.h: Likewise.
28667
	* lib/posix_wrap/wchar.h: Likewise.
28668
	* lib/posix_wrap/wctype.h: Likewise.
28669
	* conf/common.rmk (grub_script.yy.c): Remove #include elimination.
28670
	(grub_script.yy.h): Likewise.
28671
	* script/yylex.l: Remove POSIX emulation #defines.
28672
	* Makefile.in (POSIX_CFLAGS): New variable.
28673
	(GNULIB_UTIL_CFLAGS): Likewise.
28674
28675
	Regexp support.
28676
28677
	* conf/common.rmk (pkglib_MODULES): Add regexp.mod.
28678
	(regexp_mod_SOURCES): New variable.
28679
	(regexp_mod_CFLAGS): Likewise.
28680
	(regexp_mod_LDFLAGS): Likewise.
28681
	* commands/regexp.c: New file.
28682
	* gnulib/regcomp.c: New file. Imported from gnulib.
28683
	* gnulib/regex.c: Likewise.
28684
	* gnulib/regex_internal.c: Likewise.
28685
	* gnulib/regex_internal.h: Likewise.
28686
	* gnulib/regexec.c: Likewise.
28687
	* gnulib/regex.h: Likewise.
28688
28689
2010-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
28690
28691
	* loader/i386/multiboot_mbi.c (grub_multiboot_load): Correctly report
28692
	unsupported video mode types.
28693
28694
2010-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
28695
28696
	* kern/i386/pc/startup.S (grub_getrtsecs): Removed (dead code).
28697
28698
2010-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
28699
28700
	* include/grub/i386/pc/init.h (grub_get_mmap_entry): Don't export.
28701
	* conf/i386-pc.rmk (kernel_img_HEADERS): Remove machine/init.h.
28702
28703
2010-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
28704
28705
	Remove unused grub_vga_get_font.
28706
28707
	* kern/i386/pc/startup.S (grub_vga_get_font): Removed.
28708
	* include/grub/i386/pc/vga.h (grub_vga_get_font): Likewise.
28709
28710
2010-04-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
28711
28712
	* kern/misc.c: Disable the __enable_execute_stack hack for utilities.
28713
	* include/grub/misc.h: Likewise.
28714
28715
2010-04-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
28716
28717
	* util/grub-install.in: Add `|| exit 1' to all grub-probe calls
28718
	for which failure is fatal.
28719
28720
2010-04-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
28721
28722
	* util/grub-install.in: Use mkdir -p to create grub directory.
28723
	* util/i386/efi/grub-install.in: Likewise.
28724
	* util/ieee1275/grub-install.in: Likewise.
28725
28726
2010-04-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
28727
28728
	* Makefile.in (LEX): new variable.
28729
28730
2010-04-03  Grégoire Sutre  <gregoire.sutre@gmail.com>
28731
28732
	* util/i386/efi/grub-dumpdevtree: replaced the non-portable `==' by
28733
	`=' and added double quotes on operands of this equality test.
28734
28735
2010-04-03  Vladimir Serbinenko  <phcoder@gmail.com>
28736
28737
	* Makefile.in (uninstall): Remove a leftover debug echo.
28738
	Reported by: Grégoire Sutre
28739
28740
2010-04-03  Vladimir Serbinenko  <phcoder@gmail.com>
28741
28742
	MIPS multiboot2 support.
28743
28744
	* conf/mips.rmk (pkglib_MODULES): Add multiboot2.mod.
28745
	(multiboot2_mod_SOURCES): New variable.
28746
	(multiboot2_mod_CFLAGS): Likewise.
28747
	(multiboot2_mod_LDFLAGS): Likewise.
28748
	(multiboot2_mod_ASFLAGS): Likewise.
28749
	* include/grub/i386/multiboot.h (MULTIBOOT_INITIAL_STATE): New
28750
	definition.
28751
	(MULTIBOOT_ENTRY_REGISTER): Likewise.
28752
	(MULTIBOOT_MBI_REGISTER): Likewise.
28753
	(MULTIBOOT_ARCHITECTURE_CURRENT): Likewise.
28754
	(MULTIBOOT_ELF32_MACHINE): Likewise.
28755
	(MULTIBOOT_ELF64_MACHINE): Likewise.
28756
	* include/grub/mips/multiboot.h: New file.
28757
	* include/grub/video.h (grub_video_driver_id): New type
28758
	GRUB_VIDEO_DRIVER_SM712.
28759
	(grub_video_get_info_and_fini): Export.
28760
	(grub_video_get_palette): Likewise.
28761
	(grub_video_get_driver_id): Likewise.
28762
	* include/multiboot2.h: Resynced with spec.
28763
	* loader/i386/multiboot.c: Moved from here ...
28764
	* loader/multiboot.c: ... here. All users updated.
28765
	(grub_multiboot_boot): Use platform-specific macros.
28766
	* loader/i386/multiboot_elfxx.c: Moved from here ...
28767
	* loader/multiboot_elfxx.c: ... here. All users updated.
28768
	(E_MACHINE): Use MULTIBOOT_ELF32_MACHINE and MULTIBOOT_ELF64_MACHINE.
28769
	* loader/i386/multiboot_mbi2.c (grub_multiboot_load): Check arcitecture.
28770
	* video/sm712.c (grub_video_sm712_adapter): Add missing id field.
28771
28772
2010-04-02  Vladimir Serbinenko  <phcoder@gmail.com>
28773
28774
	Import gnulib argp module.
28775
28776
	* gnulib/argp-ba.c: New file.
28777
	* gnulib/argp-eexst.c: Likewise.
28778
	* gnulib/argp-fmtstream.c: Likewise.
28779
	* gnulib/argp-fmtstream.h: Likewise.
28780
	* gnulib/argp-fs-xinl.c: Likewise.
28781
	* gnulib/argp-help.c: Likewise.
28782
	* gnulib/argp-namefrob.h: Likewise.
28783
	* gnulib/argp-parse.c: Likewise.
28784
	* gnulib/argp-pin.c: Likewise.
28785
	* gnulib/argp-pv.c: Likewise.
28786
	* gnulib/argp-pvh.c: Likewise.
28787
	* gnulib/argp-version-etc.c: Likewise.
28788
	* gnulib/argp-version-etc.h: Likewise.
28789
	* gnulib/argp-xinl.c: Likewise.
28790
	* gnulib/argp.h: Likewise.
28791
28792
2010-03-31  Vladimir Serbinenko  <phcoder@gmail.com>
28793
28794
	* kern/device.c (grub_device_iterate): Clear errors after failed
28795
	opening device.
28796
28797
2010-03-31  Vladimir Serbinenko  <phcoder@gmail.com>
28798
28799
	* kern/ieee1275/openfw.c (grub_children_iterate): Skip device itself if
28800
	returned by firmware.
28801
28802
2010-03-30  Vladimir Serbinenko  <phcoder@gmail.com>
28803
28804
	* loader/i386/multiboot_mbi2.c (retrieve_video_parameters): Fix
28805
	compilation on coreboot and qemu
28806
28807
2010-03-28  Vladimir Serbinenko  <phcoder@gmail.com>
28808
28809
	* include/multiboot2.h: Resync with spec.
28810
28811
2010-03-28  Vladimir Serbinenko  <phcoder@gmail.com>
28812
28813
	Multiboot2 tag support
28814
28815
	* conf/i386.rmk (multiboot2_mod_SOURCES): Replace
28816
	loader/i386/multiboot_mbi.c with loader/i386/multiboot_mbi2.c.
28817
	Remove loader/multiboot_loader.c.
28818
	* include/grub/i386/multiboot.h (grub_multiboot_real_boot): Removed.
28819
	(grub_multiboot2_real_boot): Likewise.
28820
	* include/grub/multiboot.h (grub_multiboot_set_accepts_video): Removed.
28821
	(grub_get_multiboot_mmap_count): New proto.
28822
	(grub_fill_multiboot_mmap): Likewise.
28823
	(grub_multiboot_set_video_mode): Likewise.
28824
	(grub_multiboot_set_console): Likewise.
28825
	(grub_multiboot_load): Likewise.
28826
	(grub_multiboot_load_elf): Likewise.
28827
	(GRUB_MULTIBOOT_CONSOLE_EGA_TEXT): New definition.
28828
	(GRUB_MULTIBOOT_CONSOLE_FRAMEBUFFER): Likewise.
28829
	* include/multiboot.h: Resynced with specification.
28830
	* include/multiboot2.h: Resynced with specification.
28831
	* loader/i386/multiboot_mbi.c (DEFAULT_VIDEO_MODE): Moved from here...
28832
	* loader/i386/multiboot.c (DEFAULT_VIDEO_MODE): ... here.
28833
	* loader/i386/multiboot_mbi.c (HAS_VGA_TEXT): Moved from here ..
28834
	* include/grub/multiboot.h (GRUB_MACHINE_HAS_VGA_TEXT): ... here. All
28835
	users updated.
28836
	* loader/i386/multiboot_mbi.c (accepts_video): Moved from here...
28837
	* loader/i386/multiboot.c (accepts_video): ... here. All users updated.
28838
	* loader/i386/multiboot_mbi.c (grub_multiboot_set_accepts_video):
28839
	Removed.
28840
	* loader/i386/multiboot_mbi.c (grub_get_multiboot_mmap_len):
28841
	Moved from here...
28842
	* loader/i386/multiboot.c (grub_get_multiboot_mmap_len): ... here.
28843
	* loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap):
28844
	Moved from here...
28845
	* loader/i386/multiboot.c (grub_fill_multiboot_mmap): ... here.
28846
	* loader/i386/multiboot_mbi.c (set_video_mode): Moved from here...
28847
	* loader/i386/multiboot.c (grub_multiboot_set_video_mode): ... here.
28848
	All users updated.
28849
	* loader/i386/multiboot_mbi2.c: New file.
28850
28851
2010-03-27  Vladimir Serbinenko  <phcoder@gmail.com>
28852
28853
	Resync with gnulib.
28854
28855
	* Makefile.in (GNULIB_CFLAGS): New variable.
28856
	* conf/common.rmk (grub_mkisofs_CFLAGS): Add GNULIB_CFLAGS.
28857
	(grub_script_check_CFLAGS): New variable.
28858
	* gnulib/alloca.h: Resync with gnulib.
28859
	* gnulib/error.c: Likewise.
28860
	* gnulib/error.h: Likewise.
28861
	* gnulib/fnmatch.c: Likewise.
28862
	* gnulib/fnmatch_loop.c: Likewise.
28863
	* gnulib/getdelim.c: Likewise.
28864
	* gnulib/getline.c: Likewise.
28865
	* gnulib/getopt.c: Likewise.
28866
	* gnulib/getopt1.c: Likewise.
28867
	* gnulib/getopt_int.h: Likewise.
28868
	* gnulib/gettext.h: Likewise.
28869
	* gnulib/progname.c: Likewise.
28870
	* gnulib/progname.h: Likewise.
28871
28872
2010-03-27  Grégoire Sutre  <gregoire.sutre@gmail.com>
28873
28874
	Fix a build failure (-Wundef -Werror) when ENABLE_NLS is not defined,
28875
	which is the case with --disabled-nls.
28876
28877
	* include/grub/i18n.h: Use (defined(ENABLE_NLS)
28878
	&& ENABLE_NLS) instead of ENABLE_NLS in all #if preprocessor macros.
28879
	* util/misc.c: Likewise.
28880
	* util/mkisofs/mkisofs.c: Likewise.
28881
	* util/mkisofs/mkisofs.h: Likewise.
28882
28883
2010-03-27  Vladimir Serbinenko  <phcoder@gmail.com>
28884
28885
	Simplify Apple CC support.
28886
28887
	* commands/i386/pc/drivemap_int13h.S: Use LOCAL when possible.
28888
	Add 0 byte at the end not to have a symbol with empty target.
28889
	* mmap/i386/pc/mmap_helper.S: Likewise.
28890
	* genmk.rb: Ignore errors 2030 and 2050.
28891
	* kern/i386/pc/startup.S: Use LOCAL when possible.
28892
28893
2010-03-26  BVK Chaitanya  <bvk.groups@gmail.com>
28894
28895
	Testcase and the fix for final semicolon on cmdline.
28896
28897
	* tests/grub_script_final_semicolon.in: New testcase.
28898
	* conf/tests.rmk: Rules for the new testcase.
28899
	* script/parser.y: Grammar fix.
28900
28901
2010-03-26  BVK Chaitanya  <bvk@localhost>
28902
28903
	Blank lines testcase for GRUB script.
28904
28905
	* tests/grub_script_blanklines.in: New testcase.
28906
	* conf/tests.rmk: Rules for the new testcase.
28907
28908
2010-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
28909
28910
	Don't use __FILE__.
28911
28912
	* genmk.rb: Add -DGRUB_FILE to all C targets.
28913
	* fs/reiserfs.c: Replace __FILE__ with GRUB_FILE.
28914
	* include/grub/list.h: Likewise.
28915
	* include/grub/misc.h: Likewise.
28916
	* include/grub/mm.h: Likewise.
28917
	* include/grub/test.h: Likewise.
28918
	* kern/mm.c: Likewise.
28919
	* lib/libgcrypt_wrap/cipher_wrap.h: Likewise.
28920
28921
2010-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
28922
28923
	Sunpc partitions support.
28924
28925
	* conf/common.rmk (grub_probe_SOURCES): Add partmap/sunpc.c.
28926
	(grub_fstest_SOURCES): Likewise.
28927
	(pkglib_MODULES): Add part_sunpc.mod.
28928
	(part_sunpc_mod_SOURCES): New variable.
28929
	(part_sunpc_mod_CFLAGS): Likewise.
28930
	(part_sunpc_mod_LDFLAGS): Likewise.
28931
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/sunpc.c.
28932
	* partmap/sunpc.c: New file.
28933
28934
2010-03-26  BVK Chaitanya  <bvk@localhost>
28935
28936
	For loop support to GRUB script.
28937
28938
	* include/grub/script_sh.h (grub_script_cmdfor): New struct.
28939
	(grub_script_create_cmdfor): New function prototype.
28940
	(grub_script_execute_cmdfor): New function prototype.
28941
	* script/execute.c (grub_script_execute_cmdfor): New function.
28942
	* script/parser.y (command): New for command.
28943
	(forcmd): New grammar rule.
28944
	* script/script.c (grub_script_create_cmdfor): New function.
28945
	* util/grub-script-check.c (grub_script_execute_cmdfor): New
28946
	function.
28947
	* tests/grub_script_for1.in: New testcase.
28948
	* conf/tests.rmk: Rules for new testcase.
28949
28950
2010-03-26  Vladimir Serbinenko  <phcoder@gmail.com>
28951
28952
	Nested partitions
28953
28954
	* commands/blocklist.c (grub_cmd_blocklist): Don't check whether
28955
	'partition' is NULL, grub_partition_get_start already does that.
28956
	* commands/loadenv.c (check_blocklists): Likewise.
28957
	(write_blocklists): Likewise.
28958
	* conf/common.rmk (grub_probe_SOURCES): Add partmap/bsdlabel.c.
28959
	(grub_fstest_SOURCES): Likewise.
28960
	(pkglib_MODULES): Add part_bsd.mod.
28961
	(part_bsd_mod_SOURCES): New variable.
28962
	(part_bsd_mod_CFLAGS): Likewise.
28963
	(part_bsd_mod_LDFLAGS): Likewise.
28964
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/bsdlabel.c.
28965
	(grub_emu_SOURCES): Likewise.
28966
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
28967
	* include/grub/bsdlabel.h: New file.
28968
	* include/grub/partition.h (grub_partition_map): Remove 'probe' and
28969
	'get_name'.
28970
	(grub_partition): Add 'parent' and 'number'. Remove 'data'.
28971
	(grub_partition_map_list): New variable.
28972
	(grub_partition_map_register): Inline.
28973
	(grub_partition_map_unregister): Likewise.
28974
	(FOR_PARTITION_MAPS): New macro.
28975
	(grub_partition_map_iterate): Removed.
28976
	(grub_partition_get_start): Handle nested partitions.
28977
	* include/grub/msdos_partition.h: Remove bsd-related entries.
28978
	(grub_pc_partition): Remove.
28979
	* kern/disk.c (grub_disk_close): Free partition data.
28980
	(grub_disk_adjust_range): Handle nested partitions.
28981
	* kern/partition.c (grub_partition_map_probe): New function.
28982
	(grub_partition_probe): Parse name to number, handle subpartitions.
28983
	(get_partmap): New function.
28984
	(grub_partition_iterate): Handle subpartitions.
28985
	(grub_partition_get_name): Likewise.
28986
	* loader/i386/pc/bsd.c (grub_bsd_get_device): Likewise.
28987
	* loader/i386/multiboot.c (grub_multiboot_get_bootdev): Likewise.
28988
	* loader/i386/pc/chainloader.c (grub_chainloader_cmd): Likewise.
28989
	* partmap/acorn.c (acorn_partition_map_iterate): Don't force raw access.
28990
	Set 'number'.
28991
	(acorn_partition_map_probe): Remove.
28992
	(acorn_partition_map_get_name): Likewise.
28993
	* partmap/amiga.c (amiga_partition_map_iterate): Don't force raw access.
28994
	Set 'number'.
28995
	Set 'index' to 0 since there can be only one partition entry per sector.
28996
	(amiga_partition_map_probe): Remove.
28997
	(amiga_partition_map_get_name): Likewise.
28998
	* partmap/apple.c (apple_partition_map_iterate): Don't force raw access.
28999
	Set 'number'.
29000
	Set 'offset' and 'index' to real positions of partitions.
29001
	(apple_partition_map_probe): Remove.
29002
	(apple_partition_map_get_name): Likewise.
29003
	* partmap/bsdlabel.c: New file.
29004
	* partmap/gpt.c (gpt_partition_map_iterate): Don't force raw access.
29005
	Set 'number'.
29006
	Allocate 'data' so it can be correctly freed.
29007
	Set 'index' to offset inside sector.
29008
	(gpt_partition_map_probe): Remove.
29009
	(gpt_partition_map_get_name): Likewise.
29010
	* partmap/msdos.c (grub_partition_parse): Remove.
29011
	(pc_partition_map_iterate): Don't force raw access.
29012
	Set 'number'.
29013
	Make 'ext_offset' a local variable.
29014
	(pc_partition_map_probe): Remove.
29015
	(pc_partition_map_get_name): Remove.
29016
	* partmap/sun.c (sun_partition_map_iterate): Don't force raw access.
29017
	Set 'number'.
29018
	(sun_partition_map_probe): Remove.
29019
	(sun_partition_map_get_name): Likewise.
29020
	* parttool/msdospart.c (grub_pcpart_boot): Handle nested partitions.
29021
	(grub_pcpart_type): Likewise.
29022
	* util/hostdisk.c (open_device): Handle new numbering scheme.
29023
	(grub_util_biosdisk_get_grub_dev): Handle nested partitions.
29024
	* util/i386/pc/grub-setup.c (setup): Handle new numbering scheme.
29025
	* util/grub-probe.c (probe_partmap): Handle nested paritions.
29026
	* util/grub-install.in: Insert all subpartition modules.
29027
	* util/ieee1275/grub-install.in: Likewise.
29028
29029
2010-03-24  Adrian Glaubitz  <glaubitz@physik.fu-berlin.de>
29030
29031
	* kern/dl.c (grub_dl_resolve_symbols): Improve error message
29032
	grammar.
29033
29034
2010-03-24  Colin Watson  <cjwatson@ubuntu.com>
29035
29036
	* .bzrignore: Add grub-bin2h, grub-reboot, and grub-set-default.
29037
29038
2010-03-21  Colin Watson  <cjwatson@ubuntu.com>
29039
29040
	* util/grub-install.in: Copy .mo files from @datadir@/locale, to
29041
	match where 'make install' puts them.
29042
	* util/i386/efi/grub-install.in: Likewise.
29043
29044
2010-03-19  Colin Watson  <cjwatson@ubuntu.com>
29045
29046
	* .bzrignore: Add gentrigtables, grub-script-check,
29047
	grub_script_check_init.c, grub_script_check_init.h, and
29048
	trigtables.c.
29049
29050
2010-03-18  Vladimir Serbinenko  <phcoder@gmail.com>
29051
29052
	* kern/parser.c: Indented.
29053
29054
2010-03-17  Vladimir Serbinenko  <phcoder@gmail.com>
29055
29056
	* term/i386/pc/vesafb.c: Removed (orphaned, deprecated and broken).
29057
29058
2010-03-17  Vladimir Serbinenko  <phcoder@gmail.com>
29059
29060
	* video/fb/fbblit.c (grub_video_fbblit_blend_XXXA8888_1bit): Handle
29061
	alpha_mask_size == 0 case.
29062
29063
2010-03-14  BVK Chaitanya  <bvk.groups@gmail.com>
29064
29065
	GRUB shell lexer and parser improvements.
29066
29067
	* conf/any-emu.rmk: Build rule updates.
29068
	* conf/common.rmk: Likewise.
29069
	* conf/i386-coreboot.rmk: Likewise.
29070
	* conf/i386-efi.rmk: Likewise.
29071
	* conf/i386-ieee1275.rmk: Likewise.
29072
	* conf/i386-pc.rmk: Likewise.
29073
	* conf/powerpc-ieee1275.rmk: Likewise.
29074
	* conf/x86_64-efi.rmk: Likewise.
29075
29076
	* configure.ac: Configure check for flex.
29077
29078
	* include/grub/script_sh.h (grub_script_arg_type_t): More argument
29079
	types.
29080
	(grub_lexer_param): Struct member updates.
29081
	(grub_parser_param): Likewise.
29082
	(GRUB_LEXER_TOKEN_MAX): Maximum token size.
29083
	(GRUB_LEXER_RECORD_INCREMENT): Memory increments' size.
29084
	(grub_script_lexer_init): Prototype update.
29085
	(grub_script_lexer_record_start): Likewise.
29086
	(grub_script_lexer_record_stop): Likewise.
29087
	(grub_script_lexer_yywrap): New function prototype.
29088
	(grub_script_lexer_fini): Likewise.
29089
	(grub_script_execute_argument_to_string): Removed by...
29090
	(grub_script_execute_argument_to_argv): ...better version.
29091
29092
	* script/execute.c (ROUND_UPTO): New macro.
29093
	(grub_script_execute_cmdline): Out of memory fixes.
29094
	(grub_script_execute_menuentry): Likewise.
29095
	(grub_script_execute_argument_to_string): Removed. Update all
29096
	users by...
29097
	(grub_script_execute_argument_to_argv): ...better version.
29098
	* script/function.c (grub_script_function_create): Use
29099
	grub_script_execute_argument_to_argv instead of
29100
	grub_script_execute_argument_to_string.
29101
29102
	* script/lexer.c (check_varstate): Removed.
29103
	(check_textstate): Removed.
29104
	(grub_script_lexer_record_start): Likewise.
29105
	(grub_script_lexer_record_stop): Likewise.
29106
	(recordchar): Replaced with...
29107
	(grub_script_lexer_record): ...new function.
29108
	(nextchar): Removed.
29109
	(grub_script_lexer_init): Rewritten.
29110
	(grub_script_yylex): Rewritten.
29111
	(append_newline): New function.
29112
	(grub_script_lexer_yywrap): New function.
29113
	(grub_script_lexer_fini): New function.
29114
	(grub_script_yyerror): Sets error flag.
29115
29116
	* script/yylex.l: New file.
29117
	(grub_lexer_yyfree): Wrapper for flex yyffre.
29118
	(grub_lexer_yyalloc): Likewise.
29119
	(grub_lexer_yyrealloc): Likewise.
29120
	* script/parser.y: Refactored.
29121
29122
	* script/script.c (grub_script_arg_add): Out of memory fixes.
29123
	(grub_script_add_arglist): Likewise.
29124
	(grub_script_create_cmdline): Likewise.
29125
	(grub_script_create_cmdmenu): Likewise.
29126
	(grub_script_add_cmd): Likewise.
29127
	(grub_script_parse): Use grub_script_lexer_fini to deallocated.
29128
	* util/grub-script-check.c (grub_script_execute_menuentry): Remove
29129
	unnecessary code.
29130
29131
	* tests/grub_script_echo1.in: New testcase.
29132
	* tests/grub_script_vars1.in: New testcase.
29133
	* tests/grub_script_echo_keywords.in: New testcase.
29134
29135
2010-03-14  Vladimir Serbinenko  <phcoder@gmail.com>
29136
29137
	Remove some redundancy in build system.
29138
29139
	* Makefile.in (TARGET_CFLAGS): Add -ffreestanding.
29140
	(TARGET_ASFLAGS): Add -nostdinc -fno-builtin.
29141
	(TARGET_LDFLAGS): Add -nostdlib.
29142
	(TARGET_IMG_LDFLAGS): Likewise.
29143
	* commands/lsmmap.c (grub_cmd_lsmmap) [GRUB_MACHINE_EMU]: Don't do
29144
	anything since mmap isn't available.
29145
	* conf/any-emu.rmk (kernel_img_SOURCES): Remove commands/boot.c.
29146
	Add util/time.c.
29147
	(pkglib_MODULES): Remove reboot.mod.
29148
	(reboot_mod_SOURCES): Removed.
29149
	(reboot_mod_CFLAGS): Likewise.
29150
	(reboot_mod_LDFLAGS): Likewise.
29151
	* conf/common.rmk (script/lexer.c_DEPENDENCIES): New variable.
29152
	(MOSTLYCLEANFILES): Add symlist.c kernel_syms.lst.
29153
	(DEFSYMFILES): Add kernel_syms.lst.
29154
	(kernel_img_HEADERS): Add common headers.
29155
	(symlist.c): New target.
29156
	(kernel_syms.lst): Likewise.
29157
	(pkglib_MODULES): Add memdisk.mod.
29158
	(memdisk_mod_SOURCES): New variable.
29159
	(memdisk_mod_CFLAGS): Likewise.
29160
	(memdisk_mod_LDFLAGS): Likewise.
29161
	(pkglib_MODULES): Add reboot.mod.
29162
	(reboot_mod_SOURCES): New variable.
29163
	(reboot_mod_CFLAGS): Likewise.
29164
	(reboot_mod_LDFLAGS): Likewise.
29165
	(pkglib_MODULES): Add date.mod.
29166
	(date_mod_SOURCES): New variable.
29167
	(date_mod_CFLAGS): Likewise.
29168
	(date_mod_LDFLAGS): Likewise.
29169
	(pkglib_MODULES): Add datehook.mod.
29170
	(datehook_mod_SOURCES): New variable.
29171
	(datehook_mod_CFLAGS): Likewise.
29172
	(datehook_mod_LDFLAGS): Likewise.
29173
	(pkglib_MODULES): Add lsmmap.mod.
29174
	(lsmmap_mod_SOURCES): New variable.
29175
	(lsmmap_mod_CFLAGS): Likewise.
29176
	(lsmmap_mod_LDFLAGS): Likewise.
29177
	(pkglib_MODULES): Add boot.mod.
29178
	(boot_mod_SOURCES): New variable.
29179
	(boot_mod_CFLAGS): Likewise.
29180
	(boot_mod_LDFLAGS): Likewise.
29181
	* conf/i386-coreboot.rmk: Removed redundant parts.
29182
	* conf/i386-ieee1275.rmk: Likewise.
29183
	* conf/i386-pc.rmk: Likewise.
29184
	* conf/mips-yeeloong.rmk: Likewise.
29185
	* conf/mips.rmk: Likewise.
29186
	* conf/powerpc-ieee1275.rmk: Likewise.
29187
	* conf/sparc64-ieee1275.rmk: Likewise.
29188
	* conf/x86_64-efi.rmk: Likewise.
29189
	* conf/i386-coreboot.rmk: Moved qemu parts ..
29190
	* conf/i386-qemu.rmk: ... here
29191
	* conf/i386-efi.rmk: Moved common parts to...
29192
	* conf/x86-efi.rmk: ... here.
29193
	* conf/i386.rmk: Added modules common to all x86 variants.
29194
	* configure.ac: Add -m32/-m64 to TARGET_ASFLAGS.
29195
	* disk/memdisk.c: Remove grub/machine/kernel.h.
29196
	* gensymlist.sh.in: Include symbol.h.
29197
	* hook/datehook.c: Correct module name.
29198
	* include/grub/datetime.h (grub_get_datetime) [GRUB_MACHINE_EMU]: Export.
29199
	(grub_set_datetime) [GRUB_MACHINE_EMU]: Likewise.
29200
	* include/grub/i386/efi/serial.h: New file.
29201
	* include/grub/x86_64/efi/serial.h: Likewise.
29202
	* util/time.c: Likewise.
29203
	* video/ieee1275.c (grub_video_ieee1275_setup): Handle 64-bit void *.
29204
29205
2010-03-14  Colin King  <colin.king@ubuntu.com>
29206
2010-03-14  Colin Watson  <cjwatson@ubuntu.com>
29207
29208
	Shrink the pre-partition-table part of boot.img by eight bytes.
29209
29210
	* boot/i386/pc/boot.S (ERR): New macro.
29211
	(chs_mode): Use ERR.
29212
	(geometry_error): Likewise.
29213
	(hd_probe_error): Remove.  This is only used once, so we wrwite
29214
	it inline instead.
29215
	(read_error): Instead of printing read_error_string, just set up
29216
	%si and fall through to ...
29217
	(error_message): ... this new function, also used by ERR.
29218
29219
2010-03-14  Colin Watson  <cjwatson@ubuntu.com>
29220
29221
	Speed up consecutive hostdisk operations on the same device.
29222
29223
	* util/hostdisk.c (struct grub_util_biosdisk_data): New structure.
29224
	(grub_util_biosdisk_open): Initialise disk->data.
29225
	(struct linux_partition_cache): New structure.
29226
	(linux_find_partition): Cache partition start positions; these are
29227
	expensive to compute on every read and write.
29228
	(open_device): Cache open file descriptor in disk->data, so that we
29229
	don't have to reopen it and flush the buffer cache for consecutive
29230
	operations on the same device.
29231
	(grub_util_biosdisk_close): New function.
29232
	(grub_util_biosdisk_dev): Set `close' member.
29233
29234
	* conf/common.rmk (grub_probe_SOURCES): Add kern/list.c.
29235
	* conf/i386-efi.rmk (grub_setup_SOURCES): Likewise.
29236
	* conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
29237
	* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
29238
	* conf/x86_64-efi.rmk (grub_setup_SOURCES): Likewise.
29239
29240
2010-03-14  Vladimir Serbinenko  <phcoder@gmail.com>
29241
29242
	Compile parts of grub-emu as modules.
29243
29244
	* Makefile.in (TARGET_CPPFLAGS) [emu]: Remove -nostdinc -isystem.
29245
	(pkglib_DATA) [emu]: Remove moddep.lst command.lst fs.lst
29246
	partmap.lst parttool.lst handler.lst video.lst crypto.lst terminal.lst.
29247
	(all-local): Add $(GRUB_EMU).
29248
	(install-local): Install $(GRUB_EMU).
29249
	(uninstall): Uninstall $(GRUB_EMU).
29250
	* commands/parttool.c: Replace GRUB_UTIL with GRUB_NO_MODULES.
29251
	* kern/dl.c: Likewise.
29252
	* commands/sleep.c: Not include machine/time.h.
29253
	* conf/any-emu.rmk (COMMON_LDFLAGS): New variable.
29254
	(COMMON_CFLAGS): Likewise.
29255
	(sbin_UTILITIES): Remove grub-emu.
29256
	(grub_emu_SOURCES): Removed.
29257
	(kernel_img_RELOCATABLE): New variable.
29258
	(pkglib_PROGRAMS): Add kernel.img.
29259
	(kernel_img_SOURCES): New variable
29260
	(kernel_img_CFLAGS): Likewise.
29261
	(kernel_img_LDFLAGS): Likewise.
29262
	(TARGET_NO_STRIP): Likewise.
29263
	(TARGET_NO_DYNAMIC_MODULES): Likewise.
29264
	(pkglib_MODULES): Add progname.mod, hostfs.mod, host.mod, reboot.mod,
29265
	halt.mod, cpuid.mod, usb.mod, sdl.mod and pci.mod.
29266
	(grub-emu): New target.
29267
	(GRUB_EMU): New variable.
29268
	* configure.ac: Whitelist -emu as possible x86_64 architecture.
29269
	* efiemu/main.c: Replace GRUB_UTIL with GRUB_MACHINE_EMU.
29270
	* loader/xnu.c: Likewise.
29271
	* include/grub/pci.h: Likewise.
29272
	* genemuinit.sh: New file.
29273
	* genemuinitheader.sh: Likewise.
29274
	* genmk.rb: Don't strip if TARGET_NO_STRIP is yes.
29275
	Support TARGET_NO_DYNAMIC_MODULES.
29276
	* include/grub/dl.h (GRUB_NO_MODULES): New variable.
29277
	* commands/search.c: Fix GRUB_MOD_INIT and GRUB_MOD_FINI arguments.
29278
	* disk/loopback.c: Likewise.
29279
	* font/font_cmd.c: Likewise.
29280
	* partmap/acorn.c: Likewise.
29281
	* partmap/amiga.c: Likewise.
29282
	* partmap/apple.c: Likewise.
29283
	* partmap/gpt.c: Likewise.
29284
	* partmap/msdos.c: Likewise.
29285
	* partmap/sun.c: Likewise.
29286
	* parttool/msdospart.c: Likewise.
29287
	* term/gfxterm.c: Likewise.
29288
	* video/bitmap.c: Likewise.
29289
	* video/readers/jpeg.c: Likewise.
29290
	* video/readers/png.c: Likewise.
29291
	* video/readers/tga.c: Likewise.
29292
	* video/video.c: Likewise.
29293
	* util/grub-emu.c (read_command_list): Removed.
29294
	(main): Don't call util_init_nls.
29295
	* util/misc.c (grub_err_printf) [!GRUB_UTIL]: Removed.
29296
	(grub_util_init_nls) [!GRUB_UTIL]: Likewise.
29297
29298
2010-03-14  Vladimir Serbinenko  <phcoder@gmail.com>
29299
29300
	* conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add datetime.mod,
29301
	date.mod, datehook.mod.
29302
	(datetime_mod_SOURCES): New variable.
29303
	(datetime_mod_CFLAGS): Likewise.
29304
	(datetime_mod_LDFLAGS): Likewise.
29305
	(date_mod_SOURCES): Likewise.
29306
	(date_mod_CFLAGS): Likewise.
29307
	(date_mod_LDFLAGS): Likewise.
29308
	(datehook_mod_SOURCES): Likewise.
29309
	(datehook_mod_CFLAGS): Likewise.
29310
	(datehook_mod_LDFLAGS): Likewise.
29311
	* conf/sparc64-ieee1275.rmk: Likewise.
29312
	* lib/ieee1275/datetime.c: New file.
29313
29314
2010-03-14  Vladimir Serbinenko  <phcoder@gmail.com>
29315
29316
	* conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add ieee1275_fb.mod.
29317
	(ieee1275_fb_mod_SOURCES): New variable.
29318
	(ieee1275_fb_mod_CFLAGS): Likewise.
29319
	(ieee1275_fb_mod_LDFLAGS): Likewise.
29320
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_devices_iterate):
29321
	New proto.
29322
	* kern/ieee1275/init.c (HEAP_MAX_SIZE): Increased.
29323
	(HEAP_MAX_ADDR): Likewise.
29324
	* kern/ieee1275/openfw.c (grub_children_iterate): Don't skip empty
29325
	type.
29326
	Correct stop condition.
29327
	(grub_ieee1275_devices_iterate): New function.
29328
	* video/ieee1275.c: New file.
29329
29330
2010-03-14  Vladimir Serbinenko  <phcoder@gmail.com>
29331
29332
	Merge sparc grub-mkimage into generic grub-mkimage and a.out support.
29333
29334
	* boot/sparc64/ieee1275/boot.S (boot_continue): Use SCRATCH_PAD_BOOT
29335
	as scratch.
29336
	* boot/sparc64/ieee1275/diskboot.S (after_info_block): Use
29337
	SCRATCH_PAD_DISKBOOT as scratch.
29338
	(bootit): Pass Openfirmware pointer in %o4.
29339
	* conf/sparc64-ieee1275.rmk (kernel_img_LDFLAGS): Link at 0x4400 instead
29340
	of 0x200000.
29341
	(grub_mkimage_SOURCES): Replace util/sparc64/ieee1275/grub-mkimage.c
29342
	with util/grub-mkrawimage.c.
29343
	* configure.ac: Handle GRUB_MACHINE_SPARC64 and GRUB_MACHINE_MIPS.
29344
	* include/grub/aout.h (AOUT_MID_SUN): New definition.
29345
	(grub_aout_get_type) [GRUB_UTIL]: Removed.
29346
	(grub_aout_load) [GRUB_UTIL]: Likewise.
29347
	* include/grub/kernel.h (grub_modules_get_end): New proto.
29348
	* include/grub/sparc64/ieee1275/boot.h (SCRATCH_PAD): Removed.
29349
	(SCRATCH_PAD_BOOT): New definition.
29350
	(SCRATCH_PAD_DISKBOOT): Likewise.
29351
	(GRUB_BOOT_MACHINE_IMAGE_ADDRESS): Set to 0x4400.
29352
	* include/grub/sparc64/ieee1275/ieee1275.h
29353
	(grub_ieee1275_original_stack): New variable
29354
	* include/grub/sparc64/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
29355
	New definition
29356
	(GRUB_KERNEL_MACHINE_STACK_SIZE): Likewise.
29357
	(GRUB_PLATFORM_IMAGE_FORMATS): Likewise.
29358
	(GRUB_PLATFORM_IMAGE_DEFAULT_FORMAT): Likewise.
29359
	(GRUB_PLATFORM_IMAGE_DEFAULT): Likewise.
29360
	(GRUB_PLATFORM_IMAGE_RAW): Likewise.
29361
	(GRUB_PLATFORM_IMAGE_AOUT): Likewise.
29362
	(grub_platform_image_format_t): New type.
29363
	* kern/mips/yeeloong/init.c (grub_modules_get_end): Move from here ...
29364
	* kern/main.c (grub_modules_get_end)
29365
	[GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_SPARC64]: ... here.
29366
	* kern/sparc64/ieee1275/crt0.S: Store firmware entry point in %o0.
29367
	(codestart): Switch stacks.
29368
	* kern/sparc64/ieee1275/init.c (grub_ieee1275_original_stack): New
29369
	variable.
29370
	(grub_heap_init): Use grub_modules_get_end.
29371
	* loader/sparc64/ieee1275/linux.c (grub_linux_boot): Restore original
29372
	stack.
29373
	* util/grub-mkrawimage.c (generate_image): Support sparc64.
29374
	(main): Likewise.
29375
	* util/sparc64/ieee1275/grub-mkimage.c: Removed.
29376
29377
2010-03-14  Thorsten Glaser <tg@mirbsd.org>
29378
29379
	* util/grub-mkrescue.in: Base ISO UUID on UTC.
29380
29381
2010-03-08  Matt Kraai  <kraai@ftbfs.org>
29382
29383
	* util/i386/pc/grub-setup.c (setup): Fix a grammatical error (Debian
29384
	bug #559005).
29385
29386
2010-03-07  Vladimir Serbinenko  <phcoder@gmail.com>
29387
29388
	* genmoddep.awk: Output all missing symbols and not only first.
29389
1.13.10 by Colin Watson
Import upstream version 1.98
29390
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
29391
29392
	* NEWS: Put the date of 1.98 release.
29393
29394
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
29395
29396
	* configure.ac: Update CPPFLAGS and not CFLAGS when checking for
29397
	ft2build.h.
29398
29399
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
29400
29401
	* normal/cmdline.c (grub_cmdline_get): Fix gabled line after
29402
	completition in the middle of string.
29403
29404
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
29405
29406
	* util/grub-mkrescue.in: Use mktemp with explicit template.
29407
29408
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
29409
29410
	* loader/i386/bsd.c (grub_bsd_get_device): Fix a memory leak.
29411
29412
2010-03-06  Vladimir Serbinenko  <phcoder@gmail.com>
29413
29414
	* loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Free the
29415
	right pointer.
29416
29417
2010-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
29418
29419
	Fix FreeBSD compilation.
29420
29421
	* Makefile.in (TARGET_CPPFLAGS): Remove -nostdinc -isystem.
29422
	* configure.ac: Add -nostdinc -isystem to TARGET_CPPFLAGS if it works.
29423
29424
2010-03-05  Vladimir Serbinenko  <phcoder@gmail.com>
29425
29426
	* util/import_gcry.py: Add autogenerated files to MAINTAINER_CLEANFILES.
29427
29428
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29429
29430
	* gettext/gettext.c (grub_gettext_init_ext): Fix a memory leak.
29431
29432
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29433
29434
	* disk/scsi.c (grub_scsi_iterate): Fix a memory leak.
29435
29436
2010-03-04  Robert Millan  <rmh.grub@aybabtu.com>
29437
29438
	Support relative image path in theme file.
29439
29440
	* gfxmenu/gui_image.c (grub_gui_image): New member theme_dir.
29441
	(image_set_property): Handle theme_dir and relative path.
29442
29443
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29444
29445
	* configure.ac: Alias amd64 to x86_64.
29446
29447
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29448
29449
	* NEWS: mention multiboot on EFI.
29450
29451
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29452
29453
	* kern/main.c (grub_load_modules): Handle errors from init functions of
29454
	embeded modules.
29455
29456
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29457
29458
	* normal/autofs.c (autoload_fs_module): Handle errors.
29459
29460
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29461
29462
	Disable linux.mod on qemu-mips since it's not functional and leads
29463
	to compilation failure.
29464
29465
	* conf/mips.rmk (pkglib_MODULES): Remove linux.mod.
29466
	* conf/mips-yeeloong.rmk (pkglib_MODULES): Add linux.mod.
29467
	* conf/mips.rmk (linux_mod_SOURCES): Move from here ...
29468
	* conf/mips-yeeloong.rmk (linux_mod_SOURCES): ... here
29469
	* conf/mips.rmk (linux_mod_CFLAGS): Move from here ...
29470
	* conf/mips-yeeloong.rmk (linux_mod_CFLAGS): ... here
29471
	* conf/mips.rmk (linux_mod_ASFLAGS): Move from here ...
29472
	* conf/mips-yeeloong.rmk (linux_mod_ASFLAGS): ... here
29473
	* conf/mips.rmk (linux_mod_LDFLAGS): Move from here ...
29474
	* conf/mips-yeeloong.rmk (linux_mod_LDFLAGS): ... here
29475
	Reported by: BVK Chaitanya
29476
29477
2010-03-04  Jordan Uggla  <jordan.uggla@gmail.com>
29478
29479
	* INSTALL: Add gettext as a dependency and add qemu to a new section
29480
	"Prerequisites for make-check".
29481
29482
2010-03-04  Christian Franke  <franke@computer.org>
29483
29484
	* util/grub-pe2elf.c: Add missing include "progname.h".
29485
29486
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29487
29488
	* normal/crypto.c (read_crypto_list): Fix a typo.
29489
	Reported by: Seth Goldberg.
29490
29491
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29492
29493
	* Makefile.in (DISTCLEANFILES): Add stamp-h1.
29494
	Reported by: Seth Goldberg.
29495
29496
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29497
29498
	* Makefile.in (CLEANFILES) [FONT_SOURCE && grub_mkfont]: Add
29499
	ascii.bitmaps.
29500
29501
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29502
29503
	* genmk.rb: Remove terminal*.lst in make clean.
29504
	Reported by: Seth Goldberg.
29505
29506
2010-03-04  Vladimir Serbinenko  <phcoder@gmail.com>
29507
29508
	* util/i386/efi/grub-install.in: Copy gettext files.
29509
29510
2010-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
29511
29512
	* fs/ext2.c (grub_ext2_read_block): Fix an integer overflow.
29513
29514
2010-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
29515
29516
	Wait for user entry basing on presence of output rather than on errors.
29517
29518
	* include/grub/normal.h (grub_normal_get_line_counter): New proto.
29519
	(grub_install_newline_hook): Likewise.
29520
	* normal/main.c (GRUB_MOD_INIT): Call grub_install_newline_hook.
29521
	* normal/menu.c (show_menu): Check line_counter to determine presence
29522
	of output.
29523
	* normal/term.c (grub_normal_line_counter): New variable.
29524
	(grub_normal_get_line_counter): New function.
29525
	(grub_install_newline_hook): Likewise.
29526
29527
2010-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
29528
29529
	* commands/cat.c (grub_cmd_cat): Propagate grub_gzfile_open error.
29530
29531
2010-03-01  Vladimir Serbinenko  <phcoder@gmail.com>
29532
29533
	* configure.ac: Update version to 1.98.
29534
29535
2010-02-26  Vladimir Serbinenko  <phcoder@gmail.com>
29536
29537
	* util/grub.d/10_linux.in (linux_entry): Don't default to
29538
	gfxpayload=keep if Linux doesn't support video handover.
29539
29540
2010-02-25  Vladimir Serbinenko  <phcoder@gmail.com>
29541
29542
	Don't compile video modules on yeeloong since video subsystem is part
29543
	of kernel.
29544
29545
	* conf/common.rmk (pkglib_MODULES) [yeeloong]: Remove video.mod,
29546
	video_fb.mod, bitmap.mod, font.mod, gfxterm.mod and bufio.mod
29547
	* conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add bitmap.h,
29548
	video.h, gfxterm.h, font.h, bitmap_scale.h and bufio.h.
29549
	* conf/mips.rmk (kernel_img_HEADERS): Add values instead of overwriting.
29550
	* include/grub/bitmap.h: Add EXPORT_FUNC and EXPORT_VAR.
29551
	* include/grub/bitmap_scale.h: Likewise.
29552
	* include/grub/bufio.h: Likewise.
29553
	* include/grub/font.h: Likewise.
29554
	* include/grub/gfxterm.h: Likewise.
29555
	* include/grub/video.h: Likewise.
29556
	* include/grub/vbe.h: Don't include video_fb.h.
29557
	* video/i386/pc/vbe.c: Include video_fb.h.
29558
	* commands/i386/pc/vbetest.c: Include video.h.
29559
29560
2010-02-25  Jordan Uggla  <jordan.uggla@gmail.com>
29561
29562
	* util/grub-mkconfig.in (GRUB_SAVEDEFAULT): Export new variable.
29563
	* util/grub-mkconfig_lib.in (save_default_entry): Only save a new
29564
	default entry if GRUB_SAVEDEFAULT=true.  This allows using
29565
	GRUB_DEFAULT=saved on its own to let grub-reboot work, without
29566
	saving a new default on every boot.
29567
29568
2010-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
29569
29570
	* normal/crypto.c (read_crypto_list): Fix a memory leak.
29571
	* normal/term.c (read_terminal_list): Likewise.
29572
	* normal/main.c (grub_normal_init_page): Likewise.
29573
	(grub_normal_read_line_real): Likewise.
29574
29575
2010-02-24  Vladimir Serbinenko  <phcoder@gmail.com>
29576
29577
	* loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Fix a
29578
	memory leak.
29579
	Reported by: Seth Goldberg.
29580
29581
2010-02-24  Joey Korkames  <joey+lists@kidfixit.com>
29582
29583
	* term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Remove
29584
	duplicate declaration of `start'.
29585
29586
2010-02-20  Vladimir Serbinenko  <phcoder@gmail.com>
29587
29588
	* fs/iso9660.c (grub_iso9660_iterate_dir): Strip version from joliet
29589
	filename.
29590
	Reported by: Georgy Buranov
29591
29592
2010-02-20  Carles Pina i Estany  <carles@pina.cat>
29593
29594
	* util/grub-mkrawimage.c (usage): Change string formatting to
29595
	improve gettext.
29596
29597
2010-02-20  Manoel Rebelo Abranches <mrabran@br.ibm.com>
29598
29599
	* term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Add delete and
29600
	backspace keys.
29601
29602
2010-02-20  Vladimir Serbinenko  <phcoder@gmail.com>
29603
29604
	* video/fb/video_fb.c (grub_video_fb_scroll): Fix a pixel size bug.
29605
	Reported by: Michael Suchanek.
29606
29607
2010-02-18  Samuel Thibault  <samuel.thibault@ens-lyon.org>
29608
29609
	* util/grub-mkconfig.in: Export GRUB_INIT_TUNE.
29610
	* util/grub.d/00_header.in: Handle GRUB_INIT_TUNE.
29611
29612
2010-02-16  Vladimir Serbinenko  <phcoder@gmail.com>
29613
29614
	Remove any reference to non-free fonts.
29615
29616
	* commands/videotest.c (grub_cmd_videotest): Use unifont by default.
29617
	* docs/gfxmenu-theme-example.txt: Removed. It's both outdated and
29618
	uses non-free components.
29619
	* font/font.c (grub_font_get_name): Remove example name.
29620
	* gfxmenu/gui_label.c (grub_gui_label_new): Use unifont by default.
29621
	* gfxmenu/gui_list.c (grub_gui_list_new): Likewise.
29622
	* gfxmenu/gui_progress_bar.c (grub_gui_progress_bar_new): Likewise.
29623
	* gfxmenu/view.c (grub_gfxmenu_view_new): Likewise.
29624
29625
2010-02-16  Georgy Buranov <gburanov@gmail.com>
29626
29627
	* disk/efi/efidisk.c (grub_efidisk_get_device_name): Fix a typo.
29628
29629
2010-02-15  Vladimir Serbinenko  <phcoder@gmail.com>
29630
29631
	* term/serial.c (serial_get_divisor) [GRUB_MACHINE_MIPS_YEELOONG]:
29632
	Double divisor.
29633
	(serial_hw_init) [GRUB_MACHINE_MIPS_YEELOONG]: Don't enable advanced
29634
	features.
29635
	(GRUB_MOD_INIT) [GRUB_MACHINE_MIPS_YEELOONG]: Default to 115200.
29636
29637
2010-02-15  Vladimir Serbinenko  <phcoder@gmail.com>
29638
29639
	* gensymlist.sh.in: Use TARGET_CC instead of CC.
29640
29641
2010-02-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
29642
29643
	* commands/i386/pc/play.c (GRUB_MOD_INIT(play)): Fix help.
29644
	* docs/grub.texi (Command-line and menu entry commands): Document play
29645
	command.
29646
29647
2010-02-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
29648
29649
	* commands/i386/pc/play.c (grub_cmd_play): If grub_file_open fails,
29650
	parse arguments as inline tempo and notes.  Move code for playing notes
29651
	to...
29652
	(play): ... new function.
29653
29654
2010-02-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
29655
29656
	* commands/i386/pc/play.c (T_REST, T_FINE, struct note, beep_on): Use
29657
	grub_uint16_t instead of short.
29658
	(grub_cmd_play): Use grub_uint32_t instead of int, convert data from
29659
	disk from little endian to cpu endianness.
29660
29661
2010-02-07  Samuel Thibault  <samuel.thibault@ens-lyon.org>
29662
29663
	* commands/i386/pc/play.c (BASE_TEMPO): Set to 60 *
29664
	GRUB_TICKS_PER_SECOND instead of 120.
29665
29666
2010-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
29667
29668
	* term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Wait for possible
29669
	escape sequence after \e.
29670
29671
2010-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
29672
29673
	* term/ieee1275/ofconsole.c (grub_ofconsole_putchar): Don't output
29674
	non-ASCII characters.
29675
29676
2010-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
29677
29678
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Enclose
29679
	set root in single quotes to prevent \, from being unescaped.
29680
29681
2010-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
29682
29683
	Prevent unknown commands from stopping menuentry execution.
29684
29685
	* script/execute.c (grub_script_execute_cmdline): Print error after
29686
	unknown command.
29687
29688
2010-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
29689
29690
	* fs/i386/pc/pxe.c (GRUB_MOD_INIT): Fix typo.
29691
	Reported by: Pavel Pisa.
29692
29693
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29694
29695
	* io/gzio.c (grub_gzio_open): Use grub_zalloc.
29696
29697
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29698
29699
	Merge grub_ieee1275_map_physical into grub_map and rename to
29700
	grub_ieee1275_map
29701
29702
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_map): New proto.
29703
	* include/grub/sparc64/ieee1275/ieee1275.h (grub_ieee1275_map_physical):
29704
	Remove.
29705
	* kern/ieee1275/openfw.c (grub_map): Rename to ...
29706
	(grub_ieee1275_map): ... this. All users updated. Add phys_lo when
29707
	necessary.
29708
	* kern/sparc64/ieee1275/ieee1275.c (grub_ieee1275_map_physical): Remove.
29709
29710
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29711
29712
	* disk/ieee1275/ofdisk.c (grub_ofdisk_open): Check device type before
29713
	opening and not after.
29714
29715
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29716
29717
	* term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Macroify
29718
	constants.
29719
29720
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29721
29722
	* loader/sparc64/ieee1275/linux.c (align_addr): Remove.
29723
	(alloc_phys): Use ALIGN_UP instead of align_addr.
29724
29725
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29726
29727
	* loader/sparc64/ieee1275/linux.c (alloc_phys): Correct bounds checking.
29728
29729
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29730
29731
	* kern/sparc64/ieee1275/crt0.S (codestart): Move modules backwards.
29732
29733
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29734
29735
	* disk/ieee1275/ofdisk.c (grub_ofdisk_read): Remove excessively
29736
	verbose dprintf.
29737
29738
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29739
29740
	Fix over-4GiB seek on sparc64.
29741
29742
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_seek):
29743
	Replace pos_i and pos_lo with pos. All users updated.
29744
	* include/grub/powerpc/ieee1275/ieee1275.h (GRUB_IEEE1275_CELL_SIZEOF):
29745
	New constant.
29746
	* include/grub/sparc64/ieee1275/ieee1275.h (GRUB_IEEE1275_CELL_SIZEOF):
29747
	Likewise.
29748
	* kern/ieee1275/ieee1275.c (grub_ieee1275_seek): Split pos into pos_hi
29749
	and pos_lo.
29750
29751
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29752
29753
	* util/grub-mkrawimage.c (main): Call set_program_name.
29754
29755
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29756
29757
	Properly align 64-bit targets.
29758
29759
	* util/grub-mkrawimage.c (ALIGN_ADDR): New macro.
29760
	(generate_image): Use ALIGN_ADDR.
29761
29762
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29763
29764
	Properly create cross-endian images.
29765
29766
	* include/grub/types.h (grub_host_to_target_addr): New macro
29767
	* util/grub-mkrawimage.c (generate_image): Add missing host_to_target.
29768
29769
2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
29770
29771
	* util/grub-mkrawimage.c (generate_image): Add forgotten ALIGN_UP.
29772
29773
2010-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
29774
29775
	Pass SIMPLE framebuffer size in bytes and not 64K blocks.
29776
29777
	* loader/i386/efi/linux.c (grub_linux_setup_video): Don't divide by 64K.
29778
	* loader/i386/linux.c (grub_linux_setup_video): Likewise.
29779
	(grub_linux_boot): Divide by 64K when on VESA.
29780
29781
2010-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
29782
29783
	Support GRUB_GFXPAYLOAD_LINUX.
29784
29785
	* util/grub-mkconfig.in: Export GRUB_GFXPAYLOAD_LINUX.
29786
	* util/grub.d/10_linux.in (linux_entry): Handle GRUB_GFXPAYLOAD_LINUX.
29787
29788
2010-02-10  Vladimir Serbinenko  <phcoder@gmail.com>
29789
29790
	* script/execute.c (grub_script_execute_cmdline): Use grub_print_error
29791
	to show messages instead of discarding them.
29792
	Process errors after executing command and not before. Keep old method
29793
	too as precaution.
29794
29795
2010-02-09  Vladimir Serbinenko  <phcoder@gmail.com>
29796
29797
	* configure.ac: Check for ft2build.h.
29798
29799
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
29800
29801
	* kern/ieee1275/openfw.c (grub_halt): Try executing "poweroff".
29802
29803
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
29804
29805
	* genkernsyms.sh.in: Use TARGET_CC.
29806
29807
2010-02-07  Colin Watson  <cjwatson@ubuntu.com>
29808
29809
	* NEWS: Update.
29810
29811
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
29812
29813
	* include/grub/multiboot2.h: Remove leftover file.
29814
	* include/grub/normal.h [GRUB_UTIL]: Remove leftover declarations.
29815
	* include/grub/partition.h [GRUB_UTIL]: Likewise.
29816
29817
2010-02-07  Yves Blusseau  <blusseau@zetam.org>
29818
29819
	* gnulib/getdelim.c: add missing header (type ssize_t must be defined).
29820
29821
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
29822
29823
	Fix warnings in grub-emu when compiling with maximum warning options.
29824
29825
	* util/grub-emu.c (ENABLE_RELOCATABLE): New definition.
29826
	(grub_arch_modules_addr): Return 0 and not NULL.
29827
	* util/misc.c (ENABLE_RELOCATABLE): New definition.
29828
	(xstrdup): Use newstr instead of dup.
29829
	* util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Rename one instance
29830
	of disk to dsk to avoid shadowing.
29831
	(find_free_slot): Fix prototype.
29832
	* util/getroot.c (grub_util_is_dmraid): Make static.
29833
	* include/grub/time.h (grub_get_rtc) [GRUB_MACHINE_EMU || GRUB_UTIL]:
29834
	Add missing prototype.
29835
	* util/sdl.c (grub_video_sdl_set_viewport): Remove.
29836
29837
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
29838
29839
	* loader/i386/linux.c (grub_linux_setup_video): Handle error
29840
	appropriately.
29841
29842
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
29843
29844
	* fs/reiserfs.c (grub_reiserfs_read): Use #if 0 instead of commenting
29845
	code out.
29846
29847
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
29848
29849
	* include/grub/cache.h (grub_arch_sync_caches) [i386 || x86_64]: Inline.
29850
	* kern/i386/coreboot/init.c (grub_arch_sync_caches): Remove.
29851
	* kern/i386/efi/init.c (grub_arch_sync_caches): Likewise.
29852
	* kern/i386/ieee1275/init.c (grub_arch_sync_caches): Likewise.
29853
	* kern/i386/pc/init.c (grub_arch_sync_caches): Likewise.
29854
	* util/misc.c (grub_arch_sync_caches) [i386 || x86_64]: Likewise.
29855
29856
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
29857
29858
	* include/grub/err.h (grub_err_printf): Don't export.
29859
29860
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
29861
29862
	* include/grub/dl.h (grub_dl_register_symbol): Don't export.
29863
29864
2010-02-07  Vladimir Serbinenko  <phcoder@gmail.com>
29865
29866
	* include/grub/i18n.h (grub_gettext_dummy): Removed.
29867
	* kern/misc.c (grub_gettext_dummy): Make static.
29868
29869
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
29870
29871
	* kern/misc.c (grub_utf8_to_ucs4): Don't eat valid characters preceeded
29872
	by non-valid ones.
29873
	* kern/term.c (grub_putchar): Likewise.
29874
29875
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
29876
29877
	* partmap/sun.c (sun_partition_map_iterate): Restructure flow to fix
29878
	buggy hook call and memory leak.
29879
29880
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
29881
29882
	* commands/ls.c (grub_ls_list_files): Free pathname on exit.
29883
29884
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
29885
29886
	* fs/fat.c (grub_fat_iterate_dir): Free unibuf at exit.
29887
29888
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
29889
29890
	* loader/i386/pc/xnu.c (grub_xnu_set_video): Add const qualifier to
29891
	modevar.
29892
	Return grub_errno on allocation error.
29893
29894
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
29895
29896
	* disk/ieee1275/ofdisk.c (grub_ofdisk_read): Correct error handling.
29897
29898
2010-02-06  Yves Blusseau  <blusseau@zetam.org>
29899
29900
	* conf/common.rmk (grub_script_check_SOURCES): add missing dependencies.
29901
	(grub_mkpasswd_pbkdf2_SOURCES): Likewise.
29902
29903
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
29904
29905
	* fs/i386/pc/pxe.c (grub_pxefs_dir): Return with failure on
29906
	non-pxe disk.
29907
	(grub_pxefs_open): Likewise.
29908
29909
2010-02-06  Robert Millan  <rmh.grub@aybabtu.com>
29910
29911
	* util/grub.d/10_hurd.in: Add --class information to menuentries.
29912
	* util/grub.d/10_kfreebsd.in: Likewise.
29913
	* util/grub.d/10_linux.in: Likewise.
29914
29915
2010-02-06  Colin D Bennett  <colin@gibibit.com>
29916
29917
	* conf/common.rmk (pkglib_MODULES): Add gfxmenu.mod.
29918
	(gfxmenu_mod_SOURCES): New variable.
29919
	(gfxmenu_mod_CFLAGS): Likewise.
29920
	(gfxmenu_mod_LDFLAGS): Likewise.
29921
	* include/grub/term.h (grub_term_set_current_output): Declare
29922
	argument as const.
29923
	* docs/gfxmenu-theme-example.txt: New file.
29924
	* gfxmenu/gfxmenu.c: Likewise.
29925
	* gfxmenu/gui_box.c: Likewise.
29926
	* gfxmenu/gui_canvas.c: Likewise.
29927
	* gfxmenu/gui_circular_progress.c: Likewise.
29928
	* gfxmenu/gui_image.c: Likewise.
29929
	* gfxmenu/gui_label.c: Likewise.
29930
	* gfxmenu/gui_list.c: Likewise.
29931
	* gfxmenu/gui_progress_bar.c: Likewise.
29932
	* gfxmenu/gui_string_util.c: Likewise.
29933
	* gfxmenu/gui_util.c: Likewise.
29934
	* gfxmenu/icon_manager.c: Likewise.
29935
	* gfxmenu/model.c: Likewise.
29936
	* gfxmenu/named_colors.c: Likewise.
29937
	* gfxmenu/theme_loader.c: Likewise.
29938
	* gfxmenu/view.c: Likewise.
29939
	* gfxmenu/widget-box.c: Likewise.
29940
	* include/grub/gfxmenu_model.h: Likewise.
29941
	* include/grub/gfxmenu_view.h: Likewise.
29942
	* include/grub/gfxwidgets.h: Likewise.
29943
	* include/grub/gui.h: Likewise.
29944
	* include/grub/gui_string_util.h: Likewise.
29945
	* include/grub/icon_manager.h: Likewise.
29946
29947
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
29948
29949
	Agglomerate scrolling in gfxterm.
29950
29951
	* term/gfxterm.c (grub_virtual_screen): New member 'total_screen'.
29952
	(grub_virtual_screen_setup): Initialise 'total_screen'.
29953
	(write_char): Split to ...
29954
	(paint_char): ... this ...
29955
	(write_char): ... and this.
29956
	(paint_char): Handle delayed scrolling.
29957
	(draw_cursor): Likewise.
29958
	(scroll_up): Split to ...
29959
	(real_scroll): ... this ...
29960
	(scroll_up): ... and this.
29961
	(real_scroll): Handle multi-line scroll and draw below-the-bottom
29962
	characters.
29963
	(grub_gfxterm_refresh): Call real_scroll.
29964
29965
2010-02-06  Colin D Bennett  <colin@gibibit.com>
29966
29967
	* include/grub/misc.h (grub_iscntrl): New inline function.
29968
	(grub_isalnum): Likewise.
29969
	(grub_strtol): Likewise.
29970
29971
2010-02-06  Colin D Bennett  <colin@gibibit.com>
29972
29973
	* normal/menu_text.c (get_entry_number): Move from here ...
29974
	* normal/menu.c (get_entry_number): ... moved here.
29975
	* include/grub/menu.h (grub_menu_get_default_entry_index):
29976
	New prototype.
29977
	* normal/menu.c (grub_menu_get_default_entry_index): New function.
29978
	* normal/menu_text.c (run_menu): Use grub_menu_get_default_entry_index.
29979
	* include/grub/menu_viewer.h (grub_menu_viewer_init): New prototype.
29980
	(grub_menu_viewer_should_return): Likewise.
29981
	* normal/main.c (GRUB_MOD_INIT (normal)): Call grub_menu_viewer_init.
29982
	* normal/menu_text.c (run_menu): Enable menu switching.
29983
	* normal/menu_viewer.c (should_return): New variable.
29984
	(menu_viewer_changed): Likewise.
29985
	(grub_menu_viewer_show_menu): Handle menu viewer changes.
29986
	(grub_menu_viewer_should_return): New function.
29987
	(menuviewer_write_hook): Likewise.
29988
	(grub_menu_viewer_init): Likewise.
29989
29990
2010-02-06  Colin D Bennet <colin@gibibit.com>
29991
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
29992
29993
	Support for gfxterm in a window.
29994
29995
	* include/grub/gfxterm.h: New file.
29996
	* include/grub/video.h (struct grub_video_rect): New declaration.
29997
	(grub_video_rect_t): Likewise.
29998
	* term/gfxterm.c (struct grub_gfxterm_window): New type.
29999
	(refcount): New variable.
30000
	(render_target): Likewise.
30001
	(window): Likewise.
30002
	(repaint_callback): Likewise.
30003
	(grub_virtual_screen_setup): Use 'render_target'.
30004
	(init_window): New function.
30005
	(grub_gfxterm_init_window): Likewise.
30006
	(grub_gfxterm_init): Check reference counter.
30007
	Use init_window.
30008
	(destroy_window): New function.
30009
	(grub_gfxterm_destroy_window): Likewise.
30010
	(grub_gfxterm_fini): Check reference counter.
30011
	Use destroy_window.
30012
	(redraw_screen_rect): Restore viewport.
30013
	Use 'render_target' and 'window'.
30014
	Call 'repaint_callback'.
30015
	(write_char): Use 'render_target'.
30016
	(draw_cursor): Likewise.
30017
	(scroll_up): Restore viewport.
30018
	Use 'render_target' and 'window'.
30019
	Call 'repaint_callback'.
30020
	(grub_gfxterm_cls): Likewise.
30021
	(grub_gfxterm_refresh): Use 'window'.
30022
	(grub_gfxterm_set_repaint_callback): New function.
30023
	(grub_gfxterm_background_image_cmd): Use 'window'.
30024
	(grub_gfxterm_get_term): New function.
30025
	(GRUB_MOD_INIT(term_gfxterm)): Set 'refcount' to 0.
30026
30027
2010-02-06  Colin D Bennett  <colin@gibibit.com>
30028
30029
	Bitmap scaling support.
30030
30031
	* conf/common.rmk (pkglib_MODULES): Add bitmap_scale.mod.
30032
	(bitmap_scale_mod_SOURCES): New variable.
30033
	(bitmap_scale_mod_CFLAGS): Likewise.
30034
	(bitmap_scale_mod_LDFLAGS): Likewise.
30035
	* include/grub/bitmap_scale.h: New file.
30036
	* term/gfxterm.c (BACKGROUND_CMD_ARGINDEX_MODE): New definiton.
30037
	(background_image_cmd_options): New variable.
30038
	(grub_gfxterm_background_image_cmd): Support bitmap stretching.
30039
	(cmd): Rename and change type to ...
30040
	(background_image_cmd_handle): ... this. All users updated.
30041
	(GRUB_MOD_INIT(term_gfxterm)): Make background_image extended command.
30042
	* video/bitmap_scale.c: New file.
30043
30044
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
30045
30046
	SDL support.
30047
30048
	* Makefile.in (LIBSDL): New variable.
30049
	(enable_grub_emu_sdl): Likewise.
30050
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add video files.
30051
	(grub_emu_SOURCES) [enable_grub_emu_sdl]: Add util/sdl.c.
30052
	(grub_emu_LDFLAGS) [enable_grub_emu_sdl]: Add $(LIBSDL).
30053
	* configure.ac: Detect SDL availability and add --enable-grub-emu-sdl
30054
	* util/sdl.c: New file.
30055
30056
2010-02-06  Colin D Bennett  <colin@gibibit.com>
30057
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
30058
30059
	Double buffering support.
30060
30061
	* commands/i386/pc/videotest.c (grub_cmd_videotest): Swap doublebuffers.
30062
	* include/grub/video.h: Update comment.
30063
	* include/grub/video_fb.h (grub_video_fb_doublebuf_update_screen_t):
30064
	New type.
30065
	(grub_video_fb_doublebuf_blit_init): New prototype.
30066
	* term/gfxterm.c (scroll_up): Support double buffering.
30067
	(grub_gfxterm_refresh): Likewise.
30068
	* video/fb/video_fb.c (doublebuf_blit_update_screen): New function.
30069
	(grub_video_fb_doublebuf_blit_init): Likewise.
30070
	* video/i386/pc/vbe.c (framebuffer): Remove 'render_target'. Add
30071
	'front_target', 'back_target', 'offscreen_buffer', 'page_size',
30072
	'displayed_page', 'render_page' and 'update_screen'.
30073
	(grub_video_vbe_fini): Free offscreen buffer.
30074
	(doublebuf_pageflipping_commit): New function.
30075
	(doublebuf_pageflipping_update_screen): Likewise.
30076
	(doublebuf_pageflipping_init): Likewise.
30077
	(double_buffering_init): Likewise.
30078
	(grub_video_vbe_setup): Enable doublebuffering.
30079
	(grub_video_vbe_swap_buffers): Implement.
30080
	(grub_video_vbe_set_active_render_target): Handle double buffering.
30081
	(grub_video_vbe_get_active_render_target): Likewise.
30082
	(grub_video_vbe_get_info_and_fini): Likewise. Free offscreen_buffer.
30083
	(grub_video_vbe_adapter): Use grub_video_vbe_get_active_render_target.
30084
	(grub_video_vbe_enable_double_buffering): Likewise.
30085
	(grub_video_vbe_swap_buffers): Use update_screen.
30086
	(grub_video_set_mode): Use double buffering.
30087
30088
2010-02-06  Robert Millan  <rmh.grub@aybabtu.com>
30089
30090
	* maintainance/gentrigtables.py: Remove.
30091
	* lib/trig.c: Likewise.
30092
30093
	* gentrigtables.c: New file.  C rewrite of gentrigtables.py.
30094
30095
	* conf/common.rmk (trig_mod_SOURCES): Replace `lib/trig.c' with
30096
	`trigtables.c'.
30097
	(trigtables.c): New rule.
30098
	(gentrigtables): Likewise.
30099
	(DISTCLEANFILES): Add `trigtables.c' and `gentrigtables'.
30100
30101
2010-02-06  Robert Millan  <rmh.grub@aybabtu.com>
30102
30103
	* maintainance/gentrigtables.py: Avoid duplicate hardcoding of
30104
	integer constants.
30105
30106
2010-02-06  Colin D Bennet <colin@gibibit.com>
30107
30108
	Trigonometry support.
30109
30110
	* include/grub/trig.h: New file.
30111
	* lib/trig.c: Likewise.
30112
	* maintainance/gentrigtables.py: Likewise.
30113
	* conf/common.rmk (pkglib_MODULES): Add trig.mod.
30114
	(trig_mod_SOURCES): New variable.
30115
	(trig_mod_CFLAGS): Likewise.
30116
	(trig_mod_LDFLAGS): Likewise.
30117
30118
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
30119
30120
	* kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): Support whole
30121
	disk devices.
30122
30123
2010-02-06  Vladimir Serbinenko  <phcoder@gmail.com>
30124
30125
	* kern/ieee1275/openfw.c (grub_devalias_iterate): Stop iterating on
30126
	error.
30127
30128
2010-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
30129
30130
	* util/hostdisk.c (open_device): Don't use partition device when reading
30131
	before the partition.
30132
	(grub_util_biosdisk_read): Don't read from partition and before the
30133
	partition in single operation.
30134
	(grub_util_biosdisk_write): Don't write to partition and before the
30135
	partition in single operation.
30136
30137
2010-02-03  Torsten Landschoff   <torsten@debian.org>
30138
30139
	* kern/disk.c (grub_disk_read): Fix offset computation when reading
30140
	last sectors.
30141
30142
2010-02-03  Vladimir Serbinenko  <phcoder@gmail.com>
30143
30144
	* disk/i386/pc/biosdisk.c (grub_biosdisk_read): Handle non-2048 aligned
30145
	CDROM reads.
30146
	(grub_biosdisk_write): Refuse to write to CDROM.
30147
30148
2010-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
30149
30150
	* disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Fix off-by-one error.
30151
30152
2010-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
30153
30154
	* font/font.c (find_glyph): Check that bmp_idx is available before
30155
	using it.
30156
	(grub_font_get_string_width): Never call grub_font_get_glyph_internal
30157
	with (font == NULL).
30158
30159
2010-01-28  Christian Schmitt  <chris@ilovelinux.de>
30160
30161
        * util/ieee1275/grub-install.in: Fix nvsetenv arguments.
30162
30163
2010-01-28  BVK Chaitanya  <bvk.groups@gmail.com>
30164
30165
	* include/grub/script_sh.h (sourcecode): Add const qualifier.
30166
	* util/grub-script-check.c (getline): Fix empty lines case.
30167
1.13.9 by Robert Millan
Import upstream version 1.98~20100128
30168
2010-01-28  Robert Millan  <rmh.grub@aybabtu.com>
30169
30170
	* Makefile.in (check): Exit with fail status when one of the tests
30171
	fails.
30172
	* tests/example_functional_test.c (example_test): Fix reversed assert.
30173
	* tests/example_unit_test.c (example_test): Likewise.
30174
30175
2010-01-28  Colin Watson  <cjwatson@ubuntu.com>
30176
30177
	* util/grub.d/10_linux.in: This script does not use any of the
30178
	contents of gettext.sh, only the external command `gettext', so stop
30179
	sourcing it.  (Moreover, gettext.sh isn't necessarily installed in
30180
	the same prefix as GRUB.)
30181
	* util/grub.d/10_kfreebsd.in: Likewise.
30182
30183
2010-01-27  Vladimir Serbinenko  <phcoder@gmail.com>
30184
30185
	* normal/cmdline.c (grub_cmdline_get): Fix completion in the middle
30186
	of the line.
30187
30188
2010-01-27  Vladimir Serbinenko  <phcoder@gmail.com>
30189
30190
	* kern/disk.c (grub_disk_read): Fix offset computation when reading
30191
	last sectors.
30192
30193
2010-01-27  Vladimir Serbinenko  <phcoder@gmail.com>
30194
30195
	* commands/hashsum.c (hash_file): Avoid possible stack overflow by
30196
	having a 4KiB and not 32KiB buffer size.
30197
30198
2010-01-27  Robert Millan  <rmh.grub@aybabtu.com>
30199
30200
	* util/hostfs.c: Include `<errno.h>'.
30201
	(grub_hostfs_read): Handle errors from fseeko() and fread().
30202
30203
2010-01-27  Robert Millan  <rmh.grub@aybabtu.com>
30204
30205
	* kern/disk.c (grub_disk_read): Fix bug that would cause infinite
30206
	loop when using read hooks on files whose size isn't sector-aligned.
30207
30208
2010-01-27  Robert Millan  <rmh.grub@aybabtu.com>
30209
30210
	Remove unused parameter.
30211
30212
	* fs/iso9660.c (struct grub_iso9660_data): Remove `length' parameter.
30213
	(grub_iso9660_open): Remove initialization of `data->length'.
30214
30215
2010-01-27  Robert Millan  <rmh.grub@aybabtu.com>
30216
30217
	* util/grub-fstest.c (fstest): Rewrite allocation, fixing a few
30218
	memleak conditions.
30219
30220
2010-01-27  Carles Pina i Estany  <carles@pina.cat>
30221
30222
	* util/lvm.c: New macro LVM_DEV_MAPPER_STRING.
30223
	(grub_util_lvm_isvolume): Use LVM_DEV_MAPPER_STRING.
30224
30225
2010-01-26  Carles Pina i Estany  <carles@pina.cat>
30226
30227
	* util/bin2h.c (usage): Fix warning (space after backslash).
30228
30229
2010-01-26  Carles Pina i Estany  <carles@pina.cat>
30230
30231
	* font/font.c: Include `grub/fontformat.h.
30232
	Remove font file format constants.
30233
	(grub_font_load): Use the new macros.
30234
	* include/grub/fontformat.h: New file.
30235
	* util/grub-mkfont.c: Include `grub/fontformat.c'.
30236
	(write_font_pf2): Use the new macros.
30237
1.13.8 by Felix Zielcke
Import upstream version 1.98~20100126
30238
2010-01-26  Robert Millan  <rmh.grub@aybabtu.com>
30239
30240
	* util/bin2h.c (usage): Make --help actually explain what `grub-bin2h'
30241
	does.
30242
30243
2010-01-26  Robert Millan  <rmh.grub@aybabtu.com>
30244
30245
	* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_PXE_DL): New macro.
30246
30247
	* boot/i386/pc/pxeboot.S: Include `<grub/machine/boot.h>'.
30248
	(_start): Macroify `0x7F'.
30249
30250
	* kern/i386/pc/init.c: Include `<grub/machine/boot.h>'.
30251
	(make_install_device): Use "(pxe)" as fallback prefix when booting
30252
	via PXE.
30253
30254
2010-01-26  Vladimir Serbinenko  <phcoder@gmail.com>
30255
30256
	* configure.ac: Reset LIBS after check for libgcc symbols.
30257
30258
2010-01-25  Colin Watson  <cjwatson@ubuntu.com>
30259
30260
	* util/hostdisk.c (open_device): Add trailing newline to debug
30261
	message.
30262
30263
2010-01-25  Grégoire Sutre  <gregoire.sutre@gmail.com>
30264
30265
	* configure.ac: Check for `limits.h'.
30266
	* util/misc.c: Include `<limits.h>' (for PATH_MAX).
30267
30268
2010-01-24  Robert Millan  <rmh.grub@aybabtu.com>
30269
30270
	* loader/mips/linux.c (grub_cmd_linux, grub_cmd_initrd): Don't
30271
	capitalize error strings.
30272
30273
2010-01-24  Samuel Thibault  <samuel.thibault@ens-lyon.org>
30274
30275
	* util/grub.d/10_hurd.in: Add a recovery mode.
30276
30277
2010-01-23  Vladimir Serbinenko  <phcoder@gmail.com>
30278
30279
	* configure.ac: Check for libgcc symbols with -nostdlib.
30280
30281
2010-01-23  BVK Chaitanya  <bvk.groups@gmail.com>
30282
30283
	* acinclude.m4: Quote underquoted AC_DEFUN parameters.
30284
30285
2010-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
30286
30287
	* term/ieee1275/ofconsole.c (grub_ofconsole_setcolorstate): Allocate on
30288
	stack since heap may be unavailable at that point.
30289
	(grub_ofconsole_gotoxy): Likewise.
30290
30291
2010-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
30292
30293
	* configure.ac: Check for _restgpr_14_x.
30294
	* include/grub/powerpc/libgcc.h [HAVE__RESTGPR_14_X]: Add _restgpr_*_x
30295
	and _savegpr_* prototypes.
30296
30297
2010-01-22  Robert Millan  <rmh.grub@aybabtu.com>
30298
30299
	Use generic grub_reboot() for i386-efi.
30300
30301
	* kern/efi/efi.c [__i386__] (grub_reboot): Remove.
30302
	* kern/i386/efi/startup.S: Include `"../realmode.S"'.
30303
	* kern/i386/realmode.S: Include `<grub/i386/pc/memory.h>'.
30304
30305
2010-01-22  Vladimir Serbinenko  <phcoder@gmail.com>
30306
30307
	* kern/ieee1275/init.c (grub_machine_set_prefix): Don't check for
30308
	presence of "prefix" variable as it breaks when normal.mod is
30309
	embedded.
30310
30311
2010-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
30312
30313
	* term/ieee1275/ofconsole.c (grub_ofconsole_dimensions): Allocate on
30314
	stack since heap is unavailable at that point.
30315
30316
2010-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
30317
30318
	* include/grub/i386/bsd.h (FREEBSD_N_BIOS_GEOM): Removed.
30319
	(grub_freebsd_bootinfo): Rewritten.
30320
	* loader/i386/bsd.c (grub_freebsd_boot): Use new grub_freebsd_bootinfo.
30321
30322
2010-01-21  Vladimir Serbinenko  <phcoder@gmail.com>
30323
30324
	* util/misc.c (make_system_path_relative_to_its_root): Fix typo.
30325
30326
2010-01-21  Robert Millan  <rmh.grub@aybabtu.com>
30327
30328
	* po/POTFILES: Remove mkisofs-related files.  They have their own TLP
30329
	domain now.
30330
30331
2010-01-20  Felix Zielcke <fzielcke@z-51.de>
30332
30333
	* util/misc.c (make_system_path_relative_to_its_root): Change the work
30334
	around for handling "/" to the correct fix.  Fix a memory leak.  Use
30335
	xstrdup instead of strdup.
30336
30337
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30338
30339
	* conf/mips.rmk (kernel_img_HEADERS): Add env_private.h
30340
30341
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30342
30343
	Optimise glyph lookup by Basic Multilingual Plane lookup array.
30344
30345
	* font/font.c (struct grub_font): New member 'bmp_idx'.
30346
	(font_init): Initialise 'bmp_idx'.
30347
	(load_font_index): Fill 'bmp_idx'.
30348
	(find_glyph): Make inline. Use bmp_idx for BMP characters.
30349
30350
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30351
30352
	* video/fb/video_fb.c (grub_video_fb_scroll): Optimise by avoiding
30353
	unnecessary calls.
30354
30355
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30356
30357
	Move context handling out of the kernel.
30358
30359
	* conf/any-emu.rmk (grub_emu_SOURCES): Add normal/context.c.
30360
	* conf/common.rmk (normal_mod_SOURCES): Add normal/context.c.
30361
	* conf/i386-coreboot.rmk (kernel_img_HEADERS): Add env_private.h.
30362
	* conf/i386-efi.rmk: Likewise.
30363
	* conf/i386-ieee1275.rmk: Likewise.
30364
	* conf/i386-pc.rmk: Likewise.
30365
	* conf/powerpc-ieee1275.rmk: Likewise.
30366
	* conf/sparc64-ieee1275.rmk: Likewise.
30367
	* conf/x86_64-efi.rmk: Likewise.
30368
	* include/grub/env.h: Include grub/menu.h.
30369
	(grub_env_var_type): Removed.
30370
	(grub_env_var): Replaced field 'type' with 'global'.
30371
	(grub_env_find): New prototype.
30372
	(grub_env_context_open): Remove EXPORT_FUNC.
30373
	(grub_env_context_close): Likewise.
30374
	(grub_env_export): Likewise.
30375
	(grub_env_set_data_slot): Removed.
30376
	(grub_env_get_data_slot): Likewise.
30377
	(grub_env_unset_data_slot): Likewise.
30378
	(grub_env_unset_menu): New prototype.
30379
	(grub_env_set_menu): Likewise.
30380
	(grub_env_get_menu): Likewise.
30381
	* include/grub/env_private.h: New file.
30382
	* include/grub/normal.h (grub_context_init): New prototype.
30383
	(grub_context_fini): Likewise.
30384
	* kern/corecmd.c (grub_core_cmd_export): Moved from here ...
30385
	* normal/context.c (grub_cmd_export): ... to here.
30386
	* kern/env.c: Include env_private.h.
30387
	(HASHSZ): Moved to include/grub/env_private.h.
30388
	(grub_env_context): Likewise.
30389
	(grub_env_sorted_var): Likewise.
30390
	(current_context): Renamed from this ...
30391
	(grub_current_context): ...to this. 'static' removed. All users updated.
30392
	(grub_env_find): Removed 'static'.
30393
	(grub_env_context_open): Moved to normal/context.c.
30394
	(grub_env_context_close): Likewise.
30395
	(grub_env_export): Likewise.
30396
	(mangle_data_slot_name): Removed.
30397
	(grub_env_set_data_slot): Likewise.
30398
	(grub_env_get_data_slot): Likewise.
30399
	(grub_env_unset_data_slot): Likewise.
30400
	* kern/main.c (grub_set_root_dev): Don't export root.
30401
	It will be done later.
30402
	(grub_main): Don't export prefix.
30403
	It will be done later.
30404
	* normal/context.c: New file.
30405
	* normal/main.c (free_menu): Use grub_env_unset_menu.
30406
	(grub_normal_add_menu_entry): Use grub_env_get_menu.
30407
	(read_config_file): Use grub_env_get_menu and grub_env_set_menu.
30408
	(GRUB_MOD_INIT(normal)): Call grub_context_init.
30409
	(GRUB_MOD_FINI(normal)): Call grub_context_fini.
30410
30411
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30412
30413
	setpci support.
30414
30415
	* commands/setpci.c: New file.
30416
	* conf/i386.rmk (pkglib_MODULES): Add setpci.mod.
30417
	(setpci_mod_SOURCES): New variable.
30418
	(setpci_mod_CFLAGS): Likewise.
30419
	(setpci_mod_LDFLAGS): Likewise.
30420
30421
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30422
30423
	Byte-addressable PCI configuration space.
30424
30425
	* bus/pci.c (grub_pci_make_address): Use byte address instead of
30426
	dword address.
30427
	(grub_pci_iterate): Use macroses GRUB_PCI_REG_PCI_ID and
30428
	GRUB_PCI_REG_CACHELINE.
30429
	* bus/usb/ohci.c (grub_ohci_pci_iter): Use macroses
30430
	GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESS_REG0.
30431
	* bus/usb/uhci.c (grub_ohci_pci_iter): Use macroses
30432
	GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESS_REG4.
30433
	* commands/efi/fixvideo.c (scan_card): Use macros GRUB_PCI_REG_CLASS.
30434
	* commands/efi/loadbios.c (enable_rom_area): Pass byte-address to
30435
	grub_pci_make_address.
30436
	(lock_rom_area): Likewise.
30437
	* commands/lspci.c (grub_lspci_iter): Use macroses
30438
	GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESSES. Handle byte-addressing
30439
	of grub_pci_make_address.
30440
	* disk/ata.c (grub_ata_pciinit): Likewise.
30441
	* include/grub/pci.h (GRUB_PCI_REG_PCI_ID): New macro.
30442
	(GRUB_PCI_REG_VENDOR): Likewise.
30443
	(GRUB_PCI_REG_DEVICE): Likewise.
30444
	(GRUB_PCI_REG_COMMAND): Likewise.
30445
	(GRUB_PCI_REG_STATUS): Likewise.
30446
	(GRUB_PCI_REG_REVISION): Likewise.
30447
	(GRUB_PCI_REG_CLASS): Likewise.
30448
	(GRUB_PCI_REG_CACHELINE): Likewise.
30449
	(GRUB_PCI_REG_LAT_TIMER): Likewise.
30450
	(GRUB_PCI_REG_HEADER_TYPE): Likewise.
30451
	(GRUB_PCI_REG_BIST): Likewise.
30452
	(GRUB_PCI_REG_ADDRESSES): Likewise.
30453
	(GRUB_PCI_REG_ADDRESS_REG): Likewise.
30454
	(GRUB_PCI_REG_ADDRESS_REG): Likewise.
30455
	(GRUB_PCI_REG_ADDRESS_REG): Likewise.
30456
	(GRUB_PCI_REG_ADDRESS_REG): Likewise.
30457
	(GRUB_PCI_REG_ADDRESS_REG): Likewise.
30458
	(GRUB_PCI_REG_ADDRESS_REG): Likewise.
30459
	(GRUB_PCI_REG_CIS_POINTER): Likewise.
30460
	(GRUB_PCI_REG_SUBVENDOR): Likewise.
30461
	(GRUB_PCI_REG_SUBSYSTEM): Likewise.
30462
	(GRUB_PCI_REG_ROM_ADDRESS): Likewise.
30463
	(GRUB_PCI_REG_CAP_POINTER): Likewise.
30464
	(GRUB_PCI_REG_IRQ_LINE): Likewise.
30465
	(GRUB_PCI_REG_IRQ_PIN): Likewise.
30466
	(GRUB_PCI_REG_MIN_GNT): Likewise.
30467
	(GRUB_PCI_REG_MAX_LAT): Likewise.
30468
	* loader/i386/efi/linux.c (find_framebuf): Use GRUB_PCI_REG_CLASS.
30469
	* loader/i386/efi/xnu.c (find_framebuf): Likewise.
30470
	* video/efi_uga.c (find_framebuf): Likewise.
30471
	* video/sm712.c (grub_video_sm712_setup): Likewise.
30472
	* util/pci.c (grub_pci_make_address): Use byte-addressed configuration
30473
	space.
30474
17.3.15 by Robert Millan, Robert Millan
* New Bazaar snapshot.
30475
2010-01-20  Robert Millan  <rmh.grub@aybabtu.com>
30476
30477
	* util/grub.d/10_linux.in (linux_entry): Set gfxpayload=keep when it
30478
	can be reliably determined to be supported.
30479
30480
2010-01-20  Robert Millan  <rmh.grub@aybabtu.com>
30481
30482
	* loader/i386/linux.c (grub_cmd_linux): If `vga=' was used, write down
30483
	that VESA is supported.
30484
	(grub_linux_boot): Use generic framebuffer unless VESA is known to be
30485
	supported.
30486
30487
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30488
30489
	* conf/common.rmk (font/font.c_DEPENDENCIES): Condition on FONT_SOURCE.
30490
30491
2010-01-20  Robert Millan  <rmh.grub@aybabtu.com>
30492
30493
	* util/misc.c (make_system_path_relative_to_its_root): Work around
30494
	special-casing of "/", as previous incarnation of this routine did.
30495
30496
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30497
30498
	Fix any-emu compilation.
30499
30500
	* conf/any-emu.rmk (bin_UTILITIES): Add grub-bin2h.
30501
	* grub_bin2h_SOURCES: New variable.
30502
30503
2010-01-20  Robert Millan  <rmh.grub@aybabtu.com>
30504
30505
	* util/grub.d/00_header.in: Fix stupid mistake from last commit.
30506
30507
2010-01-20  Robert Millan  <rmh.grub@aybabtu.com>
30508
30509
	* util/grub.d/00_header.in: Fix handling of locale_dir.
30510
30511
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30512
30513
	* configure.ac: Add /usr/share/fonts/unifont/unifont.pcf.gz
30514
	as possible unifont location (Gentoo).
30515
	Reported by: Alexander Brüning
30516
30517
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30518
30519
	Don't try to generate lists for kernel.img.
30520
30521
	* conf/i386-efi.rmk (pkglib_PROGRAMS): New variable.
30522
	(pkglib_MODULES): Remove kernel.img.
30523
	(kernel_img_EXPORTS): Removed.
30524
	(kernel_img_RELOCATABLE): New variable.
30525
	* conf/x86_64-efi.rmk: Likewise.
30526
	* genmk.rb: Remove *_EXPORTS support and add *_RELOCATABLE support.
30527
30528
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30529
30530
	* include/grub/misc.h (grub_sprintf): Removed. All users switched to
30531
	grub_xasprintf or grub_snprintf.
30532
	(grub_vsprintf): Likewise.
30533
	(grub_snprintf): New proto.
30534
	(grub_vsnprintf): Likewise.
30535
	(grub_xasprintf): Likewise.
30536
	(grub_xvasprintf): Likewise.
30537
	* kern/misc.c (grub_vprintf): Use grub_vsnprintf_real.
30538
	(grub_sprintf): Removed.
30539
	(grub_vsnprintf): New function.
30540
	(grub_snprintf): Likewise.
30541
	(grub_xvasprintf): Likewise.
30542
	(grub_xasprintf): Likewise.
30543
	(grub_vsprintf): Renamed to ...
30544
	(grub_vsnprintf_real): ...this. New argument max_len.
30545
30546
2010-01-20  BVK Chaitanya  <bvk.groups@gmail.com>
30547
30548
	* include/grub/script_sh.h (sourcecode): Remove const qualifier to
30549
	fix grub-script-check warning.
30550
30551
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30552
30553
	* include/grub/font.h (grub_font_load): Fix prototype.
30554
30555
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30556
30557
	* conf/mips.rmk (kernel_img_HEADERS) [yeeloong]: Add pci.h.
30558
30559
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30560
30561
	* include/grub/x86_64/at_keyboard.h: New file.
30562
30563
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30564
30565
	* loader/mips/linux.c: Include missing grub/i18n.h.
30566
30567
2009-12-20  Robert Millan  <rmh.grub@aybabtu.com>
30568
30569
	* normal/menu.c (notify_execution_failure): Clarify error message.
30570
30571
2009-12-20  Robert Millan  <rmh.grub@aybabtu.com>
30572
30573
	* commands/loadenv.c (check_blocklists): Use `grub_err_t' as
30574
	return value (and revert all return statements).  Update users.
30575
30576
2010-01-20  Dan Merillat  <debian@dan.merillat.org>
30577
30578
	* kern/device.c (grub_device_iterate): Allocate new part_ent
30579
	structure based on sizeof (*p) rather than sizeof (p->next), to
30580
	account for structure padding.
30581
30582
	* util/grub-probe.c (probe_raid_level): Return -1 immediately if
30583
	disk is NULL, which might happen for LVM physical volumes with no
30584
	LVM signature.
30585
30586
2009-12-20  Robert Millan  <rmh.grub@aybabtu.com>
30587
30588
	* loader/mips/linux.c (grub_cmd_initrd)
30589
	(GRUB_MOD_INIT(linux)): Adjust and gettextize a few strings.
30590
30591
2009-12-20  Robert Millan  <rmh.grub@aybabtu.com>
30592
30593
	* kern/mips/yeeloong/init.c (grub_video_sm712_init)
30594
	(grub_video_video_init, grub_video_bitmap_init)
30595
	(grub_font_manager_init, grub_term_gfxterm_init)
30596
	(grub_at_keyboard_init): New extern declarations.
30597
	(grub_machine_init): Initialize gfxterm and at_keyboard.
30598
30599
	* kern/main.c (grub_main): Revert grub_printf delay kludge.
30600
30601
	* util/grub-install.in: Revert embed of `at_keyboard.mod' and
30602
	`gfxterm.mod' into core image.
30603
30604
	* conf/mips.rmk (pkglib_IMAGES, kernel_img_SOURCES)
30605
	(kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS)
30606
	(kernel_img_FORMAT): Copy to ...
30607
30608
	* conf/mips-qemu-mips.rmk (pkglib_IMAGES, kernel_img_SOURCES)
30609
	(kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS)
30610
	(kernel_img_FORMAT): ... here, and ...
30611
30612
	* conf/mips-yeeloong.rmk (pkglib_IMAGES, kernel_img_SOURCES)
30613
	(kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS)
30614
	(kernel_img_FORMAT): ... here.
30615
30616
	(kernel_img_SOURCES): Add files necessary for output (gfxterm)
30617
	and input (at_keyboard) terminals in kernel.
30618
	(kernel_img_CFLAGS): Add `-DUSE_ASCII_FAILBACK'.
30619
30620
	(pkglib_MODULES): Remove `pci.mod'.
30621
	(pci_mod_SOURCES, pci_mod_CFLAGS, pci_mod_LDFLAGS)
30622
	(sm712_mod_SOURCES, sm712_mod_CFLAGS, sm712_mod_LDFLAGS)
30623
	(at_keyboard_mod_SOURCES, at_keyboard_mod_CFLAGS)
30624
	(at_keyboard_mod_LDFLAGS): Remove variables.
30625
30626
2010-01-11  Felix Zielcke <fzielcke@z-51.de>
30627
30628
	* po/POTFILES: Replace `term/i386/pc/serial.c' with `term/serial.c'.
30629
30630
2009-12-10  Robert Millan  <rmh.grub@aybabtu.com>
30631
30632
	* include/grub/mips/libgcc.h: Only export symbols for functions
30633
	that libgcc provides.
30634
30635
2009-12-02  Vladimir Serbinenko  <phcoder@gmail.com>
30636
30637
	MIPS support.
30638
30639
	* bus/bonito.c: New file.
30640
	* bus/pci.c (grub_pci_iterate): Use GRUB_PCI_NUM_BUS and
30641
	GRUB_PCI_NUM_DEVICES.
30642
	* term/i386/pc/serial.c: Move to ...
30643
	* term/serial.c: ... here. All users updated.
30644
	* util/i386/pc/grub-mkimage.c: Move to ...
30645
	* util/grub-mkrawimage.c: ... here. All users updated.
30646
	* term/i386/pc/at_keyboard.c: Move to ...
30647
	* term/at_keyboard.c: ... here. All users updated.
30648
	* conf/mips-qemu-mips.rmk: New file.
30649
	* conf/mips-yeeloong.rmk: Likewise.
30650
	* conf/mips.rmk: Likewise.
30651
	* configure.ac: New platforms mipsel-yeeloong, mips-qemu-mips and
30652
	mipsel-qemu-mips.
30653
	* disk/ata.c (grub_ata_device_initialize): Add GRUB_MACHINE_PCI_IO_BASE
30654
	to port addresses.
30655
	(grub_ata_pciinit): Support CS5536.
30656
	* font/font.c (grub_font_load): Use grub_file_t instead of filename.
30657
	* font/font_cmd.c (loadfont_command): Open file before passing it to
30658
	grub_font_load.
30659
	(pseudo_file_read): New function.
30660
	(pseudo_file_close): Likewise.
30661
	(pseudo_fs): New structure.
30662
	(load_font_module): New function.
30663
	(GRUB_MOD_INIT(font_manager)): Load embedded font.
30664
	* fs/cpio.c (grub_cpio_open): Handle partial matches correctly.
30665
	* genmk.rb: Strip .rel.dyn, .reginfo, .note and .comment.
30666
	* genmoddep.awk: Ignore __gnu_local_gp. It's defined by linker.
30667
	* include/grub/i386/at_keyboard.h: Split into ...
30668
	* include/grub/at_keyboard.h: ... this ...
30669
	* include/grub/i386/at_keyboard.h: ... and this.
30670
	* include/grub/dl.h (grub_arch_dl_init_linker) [_mips && !GRUB_UTIL]:
30671
	New prototype.
30672
	* include/grub/elfload.h (grub_elf32_size): New parameter. All users
30673
	updated.
30674
	(grub_elf64_size): Likewise.
30675
	* include/grub/font.h (grub_font_load): Use grub_file_t instead of
30676
	filename.
30677
	* include/grub/i386/io.h (grub_port_t): New type. All users updated.
30678
	* include/grub/i386/coreboot/serial.h: Rewritten.
30679
	* include/grub/i386/ieee1275/serial.h: Include
30680
	grub/i386/coreboot/serial.h instead of grub/i386/pc/serial.h.
30681
	* include/grub/i386/pc/serial.h: Moved from here ...
30682
	* include/grub/serial.h: ... to here. All users updated.
30683
	* include/grub/i386/pci.h (GRUB_MACHINE_PCI_IO_BASE): New definition.
30684
	(GRUB_PCI_NUM_BUS): Likewise.
30685
	(GRUB_PCI_NUM_DEVICES): Likewise.
30686
	(grub_pci_device_map_range): Add missing volatile keyword.
30687
	* include/grub/kernel.h (OBJ_TYPE_FONT): New enum value.
30688
	* include/grub/mips/at_keyboard.h: New file.
30689
        * include/grub/mips/cache.h: Likewise.
30690
        * include/grub/mips/io.h: Likewise.
30691
        * include/grub/mips/kernel.h: Likewise.
30692
        * include/grub/mips/libgcc.h: Likewise.
30693
        * include/grub/mips/pci.h: Likewise.
30694
        * include/grub/mips/qemu-mips/boot.h: Likewise.
30695
        * include/grub/mips/qemu-mips/kernel.h: Likewise.
30696
        * include/grub/mips/qemu-mips/loader.h: Likewise.
30697
        * include/grub/mips/qemu-mips/memory.h: Likewise.
30698
        * include/grub/mips/qemu-mips/serial.h: Likewise.
30699
        * include/grub/mips/qemu-mips/time.h: Likewise.
30700
        * include/grub/mips/relocator.h: Likewise.
30701
        * include/grub/mips/time.h: Likewise.
30702
        * include/grub/mips/types.h: Likewise.
30703
        * include/grub/mips/yeeloong/at_keyboard.h: Likewise.
30704
        * include/grub/mips/yeeloong/boot.h: Likewise.
30705
        * include/grub/mips/yeeloong/kernel.h: Likewise.
30706
        * include/grub/mips/yeeloong/loader.h: Likewise.
30707
        * include/grub/mips/yeeloong/memory.h: Likewise.
30708
        * include/grub/mips/yeeloong/pci.h: Likewise.
30709
        * include/grub/mips/yeeloong/serial.h: Likewise.
30710
        * include/grub/mips/yeeloong/time.h: Likewise.
30711
	* kern/dl.c (grub_dl_resolve_symbols): Handle STT_OBJECT correctly.
30712
	* kern/elf.c (grub_elf32_size): New parameter. All users
30713
	updated.
30714
	(grub_elf64_size): Likewise.
30715
	* kern/main.c (grub_main): Call grub_arch_dl_init_linker if necessary.
30716
	Load modules before saying "Welcome to GRUB!".
30717
	Call grub_refresh after saying "Welcome to GRUB!".
30718
        * kern/mips/cache.S: New file.
30719
        * kern/mips/cache_flush.S: Likewise.
30720
        * kern/mips/dl.c: Likewise.
30721
        * kern/mips/init.c: Likewise.
30722
        * kern/mips/qemu-mips/init.c: Likewise.
30723
        * kern/mips/startup.S: Likewise.
30724
        * kern/mips/yeeloong/init.c: Likewise.
30725
	* kern/term.c (grub_putcode): Handle NULL terminal.
30726
	(grub_getcharwidth): Likewise.
30727
	(grub_getkey): Likewise.
30728
	(grub_checkkey): Likewise.
30729
	(grub_getkeystatus): Likewise.
30730
	(grub_getxy): Likewise.
30731
	(grub_getwh): Likewise.
30732
	(grub_gotoxy): Likewise.
30733
	(grub_cls): Likewise.
30734
	(grub_setcolorstate): Likewise.
30735
	(grub_setcolor): Likewise.
30736
	(grub_getcolor): Likewise.
30737
	(grub_refresh): Likewise.
30738
	* lib/mips/relocator.c (JUMP_SIZEOF): Fix incorrect value.
30739
	(write_jump): Add hatch nop.
30740
	* lib/mips/relocator_asm.S: Use kern/mips/cache_flush.S.
30741
        * lib/mips/setjmp.S: New file.
30742
        * loader/mips/linux.c: Likewise.
30743
	* term/i386/pc/at_keyboard.c: Move from here ...
30744
	* term/at_keyboard.c: ... to here.
30745
	* term/i386/pc/serial.c: Moved from here ...
30746
	* term/serial.c: ... to here. All users updated.
30747
	(TEXT_HEIGHT): Set to 24 to fit linux terminal.
30748
	(serial_hw_io_addr): Use GRUB_MACHINE_SERIAL_PORTS.
30749
	(serial_translate_key_sequence): Avoid deadlock.
30750
	(grub_serial_getkey): Handle backspace.
30751
	(grub_serial_putchar): Fix newline handling.
30752
	* util/i386/pc/grub-mkimage.c: Move from here ...
30753
	* util/grub-mkrawimage.c: ... to here. All users updated.
30754
	(generate_image): New parameters 'font_path' and 'format'.
30755
	Support embedding font.
30756
	Use grub_host_to_target* instead of grub_cpu_to_le*.
30757
	(generate_image) [GRUB_MACHINE_MIPS]: Support ELF encapsulation.
30758
	(options) [GRUB_PLATFORM_IMAGE_DEFAULT]: New option "--format".
30759
	(options): New option "--font".
30760
	(usage): Likewise.
30761
	(main) [GRUB_PLATFORM_IMAGE_DEFAULT]: Handle "--format".
30762
	(main): Handle "--font".
30763
	* term/gfxterm.c (grub_virtual_screen): New member bg_color_display.
30764
	(grub_virtual_screen_setup): Set bg_color_display.
30765
	(redraw_screen_rect): Use bg_color_display instead of incorrect
30766
	bg_color.
30767
	(grub_gfxterm_cls): Likewise.
30768
	* util/elf/grub-mkimage.c (load_modules): New parameter 'config_path'.
30769
	Support embedding config file.
30770
	(add_segments): Likewise.
30771
	(options): New option "--config".
30772
	(main): Handle "--config".
30773
	* video/sm712.c: New file.
30774
30775
2010-01-18  Robert Millan  <rmh.grub@aybabtu.com>
30776
30777
	Fix parallel builds.
30778
30779
	* conf/common.rmk (font/font.c_DEPENDENCIES): New variable (makes
30780
	font.c depend on ascii.h).
30781
30782
2010-01-12  Carles Pina i Estany  <carles@pina.cat>
30783
30784
	* Makefile.in (DUSE_ASCII_FAILBACK): New macro.
30785
30786
2010-01-11  Carles Pina i Estany  <carles@pina.cat>
30787
30788
	* font/font.c (GENERATE_ASCII): Change the name to USE_ASCII_FAILBACK.
30789
	By default: disabled.
30790
	* Makefile.in (ascii.h): Remove the non-needed grub/bin2h size
30791
	parameter.
30792
30793
2010-01-10  Carles Pina i Estany  <carles@pina.cat>
30794
30795
	* font/font.c: Update copyright years.
30796
	* util/grub-mkfont.c (write_font_ascii_bitmap): Change comment format.
30797
30798
2010-01-10  Carles Pina i Estany  <carles@pina.cat>
30799
30800
	* font/font.c: Include `ascii.h'.
30801
	(ASCII_BITMAP_SIZE): New macro.
30802
	(ascii_font_glyph): Define.
30803
	(ascii_glyph_lookup): New function.
30804
	(grub_font_get_string_width): Change comment. If glyph not found, use
30805
	ascii_glyph_lookup.
30806
	(grub_font_get_glyph_with_fallback): If glyph not available returns
30807
	ascii_glyph_lookup.
30808
	* util/grub-mkfont.c (file_formats): New enum.
30809
	(options): Add `ascii-bitmaps' new option.
30810
	(usage): Add `asii-bitmaps' new option.
30811
	(write_font_ascii_bitmap): New function.
30812
	(write_font): Rename to ...
30813
	(write_font_p2): ... this. Remove print_glyphs call.
30814
	(main): Use file_format. Implement code for ranges if ascii-bitmaps is
30815
	used. Call print_glyphs.
30816
	* Makefile.in (pkgdata_DATA): Add `ascii.h'.
30817
30818
2010-01-14  Robert Millan  <rmh.grub@aybabtu.com>
30819
30820
	* conf/common.rmk (bin_UTILITIES): Add `grub-bin2h'.
30821
	(grub_bin2h_SOURCES): New variable.
30822
	* util/bin2h.c: New file.
30823
30824
2010-01-20  Vladimir Serbinenko  <phcoder@gmail.com>
30825
30826
	* include/multiboot.h: Resynced with spec.
30827
	* include/multiboot2.h: Likewise.
30828
	* loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap): Handle
30829
	GRUB_MACHINE_MEMORY_ACPI_RECLAIMABLE and GRUB_MACHINE_MEMORY_NVS.
30830
30831
2010-01-18  Robert Millan  <rmh.grub@aybabtu.com>
30832
30833
	* include/grub/term.h (grub_term_register_input,
30834
	grub_term_register_output): Check return of terminal init()
30835
	routines, and abort if errors are raised.
30836
30837
	* commands/terminal.c: Update copyright year.
30838
30839
2010-01-18  Robert Millan  <rmh.grub@aybabtu.com>
30840
30841
	* commands/terminal.c (grub_cmd_terminal_input)
30842
	(grub_cmd_terminal_output): Check return of terminal init()
30843
	routines, and abort if errors are raised.
30844
30845
2010-01-18  Vladimir Serbinenko  <phcoder@gmail.com>
30846
30847
	* include/grub/i386/bsd.h: Fix include pathes.
30848
30849
2010-01-18  Vladimir Serbinenko  <phcoder@gmail.com>
30850
30851
	Add missing *BSD copyright headers.
30852
30853
	* include/grub/aout.h: Add BSD licence.
30854
	* include/grub/i386/bsd.h: Parts under different licences moved to ...
30855
	* include/grub/i386/freebsd_linker.h: ... here,
30856
	* include/grub/i386/freebsd_reboot.h: ... here,
30857
	* include/grub/i386/netbsd_bootinfo.h: ... here,
30858
	* include/grub/i386/netbsd_reboot.h: ... here,
30859
	* include/grub/i386/openbsd_bootarg.h: ... here,
30860
	* include/grub/i386/openbsd_reboot.h: ... and here. Added appropriate
30861
	licence to each file.
30862
30863
2010-01-18  Robert Millan  <rmh.grub@aybabtu.com>
30864
30865
	* acinclude.m4: Remove `nop' assembly instruction; it's not
30866
	implemented by all architectures.
30867
30868
2010-01-18  Robert Millan  <rmh.grub@aybabtu.com>
30869
30870
	* loader/i386/efi/linux.c (grub_cmd_linux): Stop pretending we're
30871
	ELILO.  This is no longer necessary.
30872
30873
2010-01-18  BVK Chaitanya  <bvk.groups@gmail.com>
30874
30875
	Added new tool, grub-scrit-check to verify grub.cfg syntax.
30876
30877
	* util/grub-script-check.c: grub-script-check tool.
30878
	* conf/common.rmk: Make rules for grub-script-check.
30879
30880
2010-01-18  Robert Millan  <rmh.grub@aybabtu.com>
30881
30882
	Fix annoying UI bug in rescue mode.  Thanks to Tristan Gingold for
30883
	spotting it back in 2008.  Shame on me for forgetting he did.
30884
30885
	* kern/rescue_reader.c (grub_rescue_run): Skip zero-length lines.
30886
30887
2010-01-18  Robert Millan  <rmh.grub@aybabtu.com>
30888
30889
	* include/grub/i386/linux.h (GRUB_VIDEO_TYPE_TEXT): Rename to ...
30890
	(GRUB_VIDEO_LINUX_TYPE_TEXT): ... this.  Update all users.
30891
	(GRUB_VIDEO_TYPE_VLFB): Rename to ...
30892
	(GRUB_VIDEO_LINUX_TYPE_VESA): ... this.  Update all users.
30893
	(GRUB_VIDEO_TYPE_EFI): Rename to ...
30894
	(GRUB_VIDEO_LINUX_TYPE_SIMPLE): ... this.  Update all users.
30895
30896
2010-01-17  Robert Millan  <rmh.grub@aybabtu.com>
30897
30898
	* include/grub/test.h: Add license header.
30899
	* tests/example_functional_test.c: Likewise.
30900
	* tests/example_unit_test.c: Likewise.
30901
	* tests/lib/functional_test.c: Likewise.
30902
	* tests/lib/test.c: Likewise.
30903
	* tests/lib/unit_test.c: Likewise.
30904
30905
2010-01-17  Vladimir Serbinenko  <phcoder@gmail.com>
30906
30907
	Use flag-based instead of hook-based video mode selection and "auto"
30908
	keyword.
30909
30910
	* include/grub/video.h (grub_video_adapter): Changed 'setup' member.
30911
	(grub_video_set_mode): Changed prototype. All users updated.
30912
	(grub_video_check_mode_flag): New inline function.
30913
	* video/video.c (parse_modespec): New function.
30914
	(grub_video_set_mode): Parse flags and keywords.
30915
30916
2010-01-17  Carles Pina i Estany  <carles@pina.cat>
30917
30918
	* util/misc.c (grub_util_info): Fix the order of the parameters in a
30919
	fprintf call.
30920
30921
2010-01-16  Grégoire Sutre <gregoire.sutre@gmail.com>
30922
30923
	* genmk.rb (class SCRIPT): Replace option -i of sed by a pipe.
30924
30925
2010-01-16  Carles Pina i Estany  <carles@pina.cat>
30926
30927
	* util/grub-editenv.c (usage): Use `program_name' instead of hardcoded
30928
	string.
30929
	* util/grub-emu.c (usage): Likewise.
30930
	* util/grub-mkpasswd-pbkdf2.c (usage): Likewise.
30931
	* util/i386/efi/grub-mkimage.c (usage): Likewise.
30932
	* util/i386/pc/grub-mkimage.c (usage): Likewise.
30933
	* util/i386/pc/grub-setup.c (usage): Likewise.
30934
30935
2010-01-16  Carles Pina i Estany  <carles@pina.cat>
30936
30937
	* util/misc.c (grub_util_warn): Gettextizze, print full stop after
30938
	the message.
30939
	(grub_util_info): Likewise.
30940
	(grub_util_error): Likewise.
30941
	* util/elf/grub-mkimage.c: Fix capitalisation, quotes, full stops
30942
	and/or new lines in `grub_util_warna', `grub_util_info',
30943
	`grub_util_error' calls.
30944
	* util/getroot.c: Likewise.
30945
	* util/grub-editenv.c: Likewise.
30946
	* util/grub-emu.c: Likewise.
30947
	* util/grub-fstest.c: Likewise.
30948
	* util/grub-mkdevicemap.c: Likewise.
30949
	* util/grub-mkfont.c: Likewise.
30950
	* util/grub-mkpasswd-pbkdf2.c: Likewise.
30951
	* util/grub-mkrelpath.c: Likewise.
30952
	* util/grub-pe2elf.c: Likewise.
30953
	* util/grub-probe.c: Likewise.
30954
	* util/hostdisk.c: Likewise.
30955
	* util/i386/efi/grub-mkimage.c: Likewise.
30956
	* util/i386/pc/grub-mkimage.c: Likewise.
30957
	* util/i386/pc/grub-setup.c: Likewise.
30958
	* util/ieee1275/ofpath.c: Likewise.
30959
	* util/mkisofs/eltorito.c: Likewise.
30960
	* util/mkisofs/rock.c: Likewise.
30961
	* util/mkisofs/write.c: Likewise.
30962
	* util/raid.c: Likewise.
30963
	* util/sparc64/ieee1275/grub-mkimage.c: Likewise.
30964
	* util/sparc64/ieee1275/grub-setup.c: Likewise.
30965
30966
2010-01-15  Vladimir Serbinenko  <phcoder@gmail.com>
30967
30968
	Enable multiboot on non-pc.
30969
30970
	* conf/i386-coreboot.rmk, conf/i386-pc.rmk (pkglib_MODULES): Move
30971
	multiboot.mod and multiboot2.mod to ...
30972
	* conf/i386.rmk (pkglib_MODULES): ... here.
30973
	* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_SOURCES):
30974
	Moved to ...
30975
	* conf/i386.rmk (multiboot_mod_SOURCES): .. here.
30976
	* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_CFLAGS):
30977
	Moved to ...
30978
	* conf/i386.rmk (multiboot_mod_CFLAGS): .. here.
30979
	* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_ASFLAGS):
30980
	Moved to ...
30981
	* conf/i386.rmk (multiboot_mod_ASFLAGS): .. here.
30982
	* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_LDFLAGS):
30983
	Moved to ...
30984
	* conf/i386.rmk (multiboot_mod_LDFLAGS): .. here.
30985
	* conf/x86_64-efi.rmk (pkglib_MODULES): Remove ata.mod and
30986
	relocator.mod.
30987
	(ata_mod_SOURCES): Removed.
30988
	(ata_mod_CFLAGS): Likewise.
30989
	(ata_mod_LDFLAGS): Likewise.
30990
	(relocator_mod_SOURCES): Removed.
30991
	(relocator_mod_CFLAGS): Likewise.
30992
	(relocator_mod_ASFLAGS): Likewise.
30993
	(relocator_mod_LDFLAGS): Likewise.
30994
	Include i386.mk.
30995
	* include/grub/x86_64/multiboot.h: New file.
30996
	* loader/i386/multiboot.c (grub_multiboot_boot) [GRUB_MACHINE_EFI]:
30997
	Terminate EFI.
30998
1.13.7 by Robert Millan
Import upstream version 1.98~20100115
30999
2010-01-15  Vladimir Serbinenko  <phcoder@gmail.com>
31000
31001
	Video multiboot support.
31002
31003
	* include/grub/multiboot.h (grub_multiboot_set_accepts_video):
31004
	New prototype.
31005
	* include/multiboot.h: Resynced with multiboot specification.
31006
	* include/multiboot2.h: Likewise.
31007
	* loader/i386/multiboot.c (UNSUPPORTED_FLAGS): Support video flags.
31008
	(grub_multiboot): Parse MULTIBOOT_VIDEO_MODE fields.
31009
	* loader/i386/multiboot_mbi.c (DEFAULT_VIDEO_MODE): New constant.
31010
	(HAS_VGA_TEXT): Likewise.
31011
	(accepts_video): New variable.
31012
	(grub_multiboot_set_accepts_video): New function.
31013
	(grub_multiboot_get_mbi_size): Account for video structures.
31014
	(set_video_mode): New function.
31015
	(retrieve_video_parameters): Likewise.
31016
	(grub_multiboot_make_mbi): Fill video fields.
31017
31018
2010-01-15  Vladimir Serbinenko  <phcoder@gmail.com>
31019
31020
	Video driver ids.
31021
31022
	* include/grub/video.h (grub_video_driver_id): New type.
31023
	(grub_video_adapter): New member 'id'. All users updated.
31024
	(grub_video_get_driver_id): New proto.
31025
	* video/video.c (grub_video_get_driver_id): New function.
31026
31027
2010-01-14  Carles Pina i Estany  <carles@pina.cat>
31028
31029
	* util/grub.d/30_os-prober.in: Use `set var=val' rather than plain
31030
	`var=val'.
31031
31032
2010-01-14  Carles Pina i Estany  <carles@pina.cat>
31033
31034
	* normal/cmdline.c (print_completion): Gettextizze.
31035
31036
2001-01-14  Carles Pina i Estany  <carles@pina.cat>
31037
31038
	* loader/i386/pc/chainloader.c: Include `<grub/mm.h>'.
31039
31040
2010-01-14  Carles Pina i Estany  <carles@pina.cat>
31041
31042
	* gettext/gettext.c (grub_gettext_translate): Push and pop
31043
	grub_errno.
31044
	(grub_gettext_delete_list): Change comment style.
31045
	* kern/err.c (grub_error): Gettextizze.
31046
	(grub_fatal): Gettextizze.
31047
31048
2010-01-14  Robert Millan  <rmh.grub@aybabtu.com>
31049
31050
	* include/grub/i386/loader.h (grub_linux16_boot): Renamed to ...
31051
	(grub_linux16_real_boot): ... this.
31052
	* kern/i386/loader.S: Likewise.
31053
	* loader/i386/pc/linux.c: Include `<grub/video.h>' and `<grub/mm.h>'.
31054
	(grub_linux16_boot): New function.  Switches to text mode and calls
31055
	grub_linux16_real_boot().
31056
31057
	* loader/i386/bsd.c: Include `<grub/video.h>'.
31058
	(grub_freebsd_boot, grub_openbsd_boot, grub_netbsd_boot): Switch to
31059
	text mode before calling grub_unix_real_boot().
31060
31061
	* loader/i386/multiboot.c: Include `<grub/video.h>'.
31062
	(grub_multiboot_boot): Switch to text mode before calling
31063
	grub_relocator32_boot().
31064
31065
	* loader/i386/pc/chainloader.c: Include `<grub/video.h>'.
31066
	(grub_chainloader_boot): Switch to text mode before calling
31067
	grub_chainloader_real_boot().
31068
31069
2010-01-05  Jordan Uggla  <jordan.uggla@gmail.com>
31070
2010-01-05  Colin Watson  <cjwatson@ubuntu.com>
31071
31072
	* util/grub-reboot.in: Make sure prev_saved_entry always gets a
31073
	non-empty value.
31074
31075
2010-01-05  Jordan Uggla  <jordan.uggla@gmail.com>
31076
2010-01-05  Colin Watson  <cjwatson@ubuntu.com>
31077
31078
	* util/grub.d/00_header.in: Define a "savedefault" function for use
31079
	in menu entries.
31080
	* util/grub-mkconfig_lib.in (save_default_entry): Use it.
31081
31082
2010-01-05  Jordan Uggla  <jordan.uggla@gmail.com>
31083
2010-01-05  Colin Watson  <cjwatson@ubuntu.com>
31084
31085
	* util/grub-mkconfig_lib.in (save_default_entry): Only set
31086
	saved_entry if boot_once is unset.
31087
	* util/grub.d/00_header.in: Set boot_once to "true" if there was a
31088
	previous saved entry (i.e. grub-reboot).
31089
31090
2009-12-08  Colin Watson  <cjwatson@ubuntu.com>
31091
31092
	* util/grub.d/30_os-prober.in: Call save_default_entry for hurd.
31093
31094
2009-12-08  Colin Watson  <cjwatson@ubuntu.com>
31095
31096
	* util/grub.d/00_header.in: Use `set var=val' rather than plain
31097
	`var=val'.
31098
	* util/grub-mkconfig_lib.in (save_default_entry): Likewise.
31099
31100
2009-12-08  Colin Watson  <cjwatson@ubuntu.com>
31101
31102
	* util/grub-reboot.in: Fix --version output.
31103
	* util/grub-set-default.in: Likewise.
31104
31105
2009-12-08  Colin Watson  <cjwatson@ubuntu.com>
31106
31107
	* util/grub.d/00_header.in: Silently ignore zero-sized environment
31108
	blocks.
31109
31110
2009-12-08  Colin Watson  <cjwatson@ubuntu.com>
31111
31112
	* util/grub.d/00_header.in: Quote the value assigned to `default',
31113
	in case it contains spaces.
31114
31115
2009-12-08  Colin Watson  <cjwatson@ubuntu.com>
31116
31117
	* util/grub.d/30_os-prober.in: Fix merge error that moved a
31118
	`save_default_entry' call from the macosx case to the linux case.
31119
31120
2009-10-25  Vladimir Serbinenko  <phcoder@gmail.com>
31121
2009-10-25  Colin Watson  <cjwatson@ubuntu.com>
31122
31123
	* normal/menu.c (grub_menu_execute_entry): Save selected entry title
31124
	in `chosen' environment variable.
31125
	* normal/menu_text.c (get_entry_number): Check if the variable
31126
	matches the title of a menu entry.
31127
	(run_menu): Pass menu to get_entry_number.
31128
31129
	* util/grub-reboot.in: New file.
31130
	* util/grub-set-default.in: New file.
31131
	* conf/common.rmk (grub-reboot): New utility.
31132
	(grub-set-default): New utility.
31133
31134
	* util/grub-mkconfig_lib.in (save_default_entry): New function.
31135
	* util/grub.d/00_header.in: If GRUB_DEFAULT is `saved', set
31136
	default to `${saved_entry}'.  If `${prev_saved_entry}' is non-empty,
31137
	move it to `saved_entry' for the next boot.  Load environment on
31138
	initialisation.
31139
	* util/grub.d/10_kfreebsd.in: Call save_default_entry.
31140
	* util/grub.d/10_hurd.in: Likewise.
31141
	* util/grub.d/10_linux.in (linux_entry): Likewise.
31142
	* util/grub.d/10_windows.in: Likewise.
31143
	* util/grub.d/30_os-prober.in: Likewise.
31144
31145
	* util/grub-install.in: Create environment block.
31146
	* util/i386/efi/grub-install.in: Likewise.
31147
	* util/ieee1275/grub-install.in: Likewise.
31148
	* util/sparc64/ieee1275/grub-install.in: Likewise.
31149
31150
2010-01-14  BVK Chaitanya  <bvk.groups@gmail.com>
31151
31152
	Unit testing framework for GRUB.
31153
31154
	* Makefile.in: Test framework build rules for 'make check'.
31155
	* conf/tests.rmk: Build rules for individual tests and framework.
31156
31157
	* include/grub/test.h: Header file for whitebox tests.
31158
	* tests/lib/functional_test.c: Framework support for whitebox
31159
	functional tests.
31160
	* tests/lib/test.c: Common whitebox testing code for unit and
31161
	functional tests.
31162
	* tests/lib/unit_test.c: Framework support for whitebox unit
31163
	tests.
31164
31165
	* tests/util/grub-shell-tester.in: Support utility for grub-script
31166
	tests.
31167
	* tests/util/grub-shell.in: Utility to execute grub-script
31168
	commands in a Qemu instance.
31169
31170
	* tests/example_functional_test.c: Example whitebox functional
31171
	test.
31172
	* tests/example_grub_script_test.in: Example grub-script test.
31173
	* tests/example_scripted_test.in: Example scripted test.
31174
	* tests/example_unit_test.c: Example whitebox unit test.
31175
31176
2010-01-14  Vladimir Serbinenko  <phcoder@gmail.com>
31177
31178
	* conf/i386-coreboot.rmk (multiboot_mod_SOURCES):
31179
	Add loader/i386/multiboot_mbi.c.
31180
	(multiboot2_mod_SOURCES): Likewise.
31181
	* conf/i386-pc.rmk (multiboot_mod_SOURCES): Likewise.
31182
	(multiboot2_mod_SOURCES): Likewise.
31183
	* include/grub/multiboot.h (grub_multiboot_get_mbi_size): New proto.
31184
	(grub_multiboot_make_mbi): Likewise.
31185
	(grub_multiboot_free_mbi): Likewise.
31186
	(grub_multiboot_init_mbi): Likewise.
31187
	(grub_multiboot_add_module): Likewise.
31188
	(grub_multiboot_set_bootdev): Likewise.
31189
	* loader/i386/multiboot.c (mbi): Removed.
31190
	(mbi_dest): Likewise.
31191
	(alloc_mbi): New variable.
31192
	(grub_multiboot_payload_size): Removed. All users updated.
31193
	(grub_multiboot_pure_size): New variable.
31194
	(grub_multiboot_boot): Use grub_multiboot_make_mbi.
31195
	(grub_multiboot_unload): Use grub_multiboot_free_mbi.
31196
	(grub_get_multiboot_mmap_len): Moved to loader/i386/multiboot_mbi.c.
31197
	(grub_fill_multiboot_mmap): Likewise.
31198
	(grub_multiboot_get_bootdev): Likewise.
31199
	(grub_multiboot): Use multiboot_mbi functions.
31200
	* loader/i386/multiboot_mbi.c: New file.
31201
31202
2010-01-13  Vladimir Serbinenko  <phcoder@gmail.com>
31203
31204
	* kern/efi/init.c (grub_efi_fini): Don't call grub_efi_mm_fini as
31205
	it would result in module crash.
31206
31207
2010-01-13  Vladimir Serbinenko  <phcoder@gmail.com>
31208
31209
	* term/ieee1275/ofconsole.c (grub_ofconsole_putchar): Handle '\r'.
31210
	(grub_ofconsole_getwh): Split to ...
31211
	(grub_ofconsole_getwh): ... this.
31212
	(grub_ofconsole_dimensions): ...and this.
31213
	(grub_ofconsole_init_output): Call grub_ofconsole_dimensions.
31214
31215
2010-01-13  Robert Millan  <rmh.grub@aybabtu.com>
31216
31217
	* util/mkisofs/rock.c (generate_rock_ridge_attributes): Fix a typo.
31218
31219
2010-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
31220
31221
	* loader/i386/pc/multiboot2.c: Removed stalled file.
31222
31223
2010-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
31224
31225
	* util/grub-mkpasswd-pbkdf2.c (main): Use grub_util_init_nls.
31226
	Reported by: Grégoire Sutre
31227
31228
2010-01-11  Robert Millan  <rmh.grub@aybabtu.com>
31229
31230
	* util/misc.c (canonicalize_file_name): New function.
31231
	(make_system_path_relative_to_its_root): Use canonicalize_file_name()
31232
	instead of realpath().
31233
31234
2010-01-11  Colin Watson  <cjwatson@ubuntu.com>
31235
31236
	* util/grub-install.in (usage): Clarify meaning of --root-directory,
31237
	and make it clearer that it's optional.  Based on confusion
31238
	witnessed on IRC.
31239
31240
2010-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
31241
31242
	* term/i386/pc/vga_text.c (inc_y): Fix off-by-one error which resulted
31243
	in premature implicit newline.
31244
31245
2010-01-10  Vladimir Serbinenko  <phcoder@gmail.com>
31246
31247
	* normal/cmdline.c (grub_cmdline_get): Fix off-by-one error
31248
	which resulted in garbled command line at the end of screen.
31249
1.13.6 by Robert Millan
Import upstream version 1.98~20100110
31250
2010-01-10  Robert Millan  <rmh.grub@aybabtu.com>
31251
31252
	* loader/i386/ieee1275/linux.c (grub_linux_boot): Rework video position
31253
	initialization with similar approach as with other Linux loaders.
31254
31255
2010-01-10  Robert Millan  <rmh.grub@aybabtu.com>
31256
31257
	Fix i386-ieee1275 build.
31258
31259
	* loader/i386/ieee1275/linux.c (grub_linux_boot): Use grub_term_width()
31260
	and grub_term_height() for video_{width,height} initialization.
31261
31262
2010-01-10  Robert Millan  <rmh.grub@aybabtu.com>
31263
31264
	Fix grub-emu build.
31265
31266
	* conf/any-emu.rmk (grub_emu_SOURCES): Remove `kern/reader.c'.
31267
31268
2010-01-07  Vladimir Serbinenko  <phcoder@gmail.com>
31269
2010-01-09  Robert Millan  <rmh.grub@aybabtu.com>
31270
31271
	Support for multiple terminals.
31272
31273
	* Makefile.in (pkglib_DATA): terminal.lst.
31274
	(terminal.lst): New target.
31275
	* commands/handler.c (grub_cmd_handler): Don't handle terminals.
31276
	(GRUB_MOD_INIT(handler)): Likewise.
31277
	(GRUB_MOD_FINI(handler)): Likewise.
31278
	* commands/help.c (grub_cmd_help): Handle multiple terminals.
31279
	* commands/keystatus.c (grub_cmd_keystatus): Likewise.
31280
	* commands/sleep.c (do_print): Use grub_term_restore_pos.
31281
	(grub_cmd_sleep): Use grub_term_save_pos.
31282
	* commands/terminal.c: New file.
31283
	* conf/any-emu.rmk (grub_emu_SOURCES): Add normal/term.c
31284
	commands/terminal.c and lib/charset.c.
31285
	* conf/common.rmk (normal_mod_SOURCES): Add normal/term.c.
31286
	(pkglib_MODULES): Add terminal.mod.
31287
	(terminal_mod_SOURCES): New variable.
31288
	(terminal_mod_CFLAGS): Likewise.
31289
	(terminal_mod_LDFLAGS): Likewise.
31290
	* genhandlerlist.sh: Don't handle terminals.
31291
	* genmk.rb: Generate terminal-*.lst.
31292
	* genterminallist.sh: New file.
31293
	* include/grub/charset.h (grub_ucs4_to_utf8_alloc): New proto.
31294
	(grub_is_valid_utf8): Likewise.
31295
	(grub_utf8_to_ucs4_alloc): Likewise.
31296
	* include/grub/menu_viewer.h (grub_menu_viewer): Rewritten.
31297
	(grub_menu_register_viewer): Changed argument.
31298
	(grub_menu_try_text): New proto.
31299
	(grub_gfxmenu_try_hook): New declaration.
31300
	* include/grub/normal.h (grub_normal_exit_level): New declaration.
31301
	(grub_menu_init_page): Additional argument term.
31302
	(grub_normal_init_page): Likewise.
31303
	(grub_cmdline_get): Arguments simplified.
31304
	(grub_utf8_to_ucs4_alloc): Removed.
31305
	(grub_print_ucs4): Additional argument term.
31306
	(grub_getstringwidth): Likewise.
31307
	(grub_print_message_indented): Likewise.
31308
	(grub_menu_text_register_instances): New proto.
31309
	(grub_show_menu): Likewise.
31310
	(read_terminal_list): Likewise.
31311
	(grub_set_more): Likewise.
31312
	* include/grub/parser.h: Include handler.h.
31313
	* include/grub/reader.h: Rewritten.
31314
	* include/grub/term.h (GRUB_TERM_NEED_INIT): Removed.
31315
	(GRUB_TERM_WIDTH): Changed to function.
31316
	(GRUB_TERM_HEIGHT): Likewise.
31317
	(GRUB_TERM_BORDER_WIDTH): Likewise.
31318
	(GRUB_TERM_BORDER_HEIGHT): Likewise.
31319
	(GRUB_TERM_NUM_ENTRIES): Likewise.
31320
	(GRUB_TERM_ENTRY_WIDTH): Likewise.
31321
	(GRUB_TERM_CURSOR_X): Likewise.
31322
	(grub_term_input_class): Likewise.
31323
	(grub_term_output_class): Likewise.
31324
	(grub_term_outputs_disabled): New declaration.
31325
	(grub_term_inputs_disabled): Likewise.
31326
	(grub_term_outputs): Likewise.
31327
	(grub_term_inputs): Likewise.
31328
	(grub_term_register_input): Rewritten.
31329
	(grub_term_register_output): Likewise.
31330
	(grub_term_unregister_input): Likewise.
31331
	(grub_term_unregister_output): Likewise.
31332
	(FOR_ACTIVE_TERM_INPUTS): New macro.
31333
	(FOR_DISABLED_TERM_INPUTS): Likewise.
31334
	(FOR_ACTIVE_TERM_OUTPUTS): Likewise.
31335
	(FOR_DISABLED_TERM_OUTPUTS): Likewise.
31336
	* include/grub/terminfo.h: Add oterm argument to all protypes.
31337
	* kern/main.c (grub_main): Don't call grub_register_rescue_reader.
31338
	Use grub_rescue_run.
31339
	* kern/misc.c (grub_utf8_to_ucs4): Put '?' for invalid characters.
31340
	All users updated.
31341
	* kern/reader.c: Removed. All users updated.
31342
	* kern/rescue_reader.c (grub_rescue_init): Removed.
31343
	(grub_rescue_reader): Likewise.
31344
	(grub_register_rescue_reader): Likewise.
31345
	(grub_rescue_run): New function based on kern/reader.c.
31346
	* kern/term.c: Adapted for multiterm.
31347
	* lib/charset.c (grub_ucs4_to_utf8_alloc): New function.
31348
	(grub_is_valid_utf8): Likewise.
31349
	(grub_utf8_to_ucs4_alloc): Moved from normal/menu_text.c.
31350
	* loader/i386/efi/linux.c (grub_cmd_linux): Retrieve parameters of
31351
	right terminal.
31352
	* loader/i386/linux.c (grub_linux_boot): Likewise.
31353
	* normal/auth.c (grub_username_get): New function.
31354
	(grub_auth_check_authentication): Use grub_username_get.
31355
	* normal/cmdline.c: Changed to UCS4. Adapted for multiterm.
31356
	* normal/color.c: Adapt for multiterm.
31357
	* normal/main.c (read_config_file): Don't use grub_reader_loop.
31358
	(grub_normal_init_page): Additional argument term.
31359
	(read_lists): Call read_terminal_lists.
31360
	(grub_enter_normal_mode): Call grub_cmdline_run.
31361
	Handle grub_normal_exit_level.
31362
	(grub_cmd_normal): Make reentrant.
31363
	(grub_cmd_normal_exit): New function.
31364
	(grub_normal_reader_init): Additional argument nested. Handle multiterm.
31365
	* normal/menu.c: Adapt for multiterm.
31366
	* normal/menu_entry.c: Likewise.
31367
	* normal/menu_text.c: Likewise.
31368
	* normal/menu_viewer.c: Removed. All users updated.
31369
	* normal/term.c: New file.
31370
	* util/console.c: Change order of includes to workaround a bug in
31371
	ncurses headers.
31372
	* term/terminfo.c: New argument oterm on all exported functions.
31373
	All users updated.
31374
	* util/grub-editenv.c (grub_term_input_class): Removed.
31375
	(grub_term_output_class): Likewise.
31376
31377
2010-01-09  Robert Millan  <rmh.grub@aybabtu.com>
31378
31379
	Make loader output a bit more user-friendly.
31380
31381
	* util/grub.d/10_hurd.in: Print message indicating that GNU Mach
31382
	is being loaded.  Likewise for the Hurd.
31383
31384
	* util/grub.d/10_kfreebsd.in (kfreebsd_entry): Print message indicating
31385
	that kernel of FreeBSD ${version} is being loaded.
31386
31387
	* loader/i386/linux.c (grub_cmd_linux): Move debug info to
31388
	grub_dprintf().
31389
	(grub_cmd_initrd): Likewise.
31390
	* util/grub.d/10_linux.in (linux_entry): Print message indicating
31391
	that Linux ${version} is being loaded.  Likewise for initrd.
31392
31393
2010-01-09  Carles Pina i Estany  <carles@pina.cat>
31394
31395
	* gettext/gettext.c (GRUB_MOD_INIT): Gettextizze.
31396
31397
2010-01-08  Carles Pina i Estany  <carles@pina.cat>
31398
31399
	* loader/efi/appleloader.c: Include `<grub/i18n.h>'.
31400
	(GRUB_MOD_INIT): Gettextizze.
31401
	* loader/efi/chainloader.c: Include `<grub/i18n.h>'.
31402
	(GRUB_MOD_INIT): Gettextizze.
31403
	* loader/i386/efi/linux.c: Include `<grub/i18n.h>'.
31404
	(grub_cmd_linux): Capitalise Linux.
31405
	(GRUB_MOD_INIT): Gettextizze.
31406
	* loader/i386/ieee1275/linux.c: Include `<grub/i18n.h>'.
31407
	(grub_cmd_linux): Capitalise Linux.
31408
	(GRUB_MOD_INIT): Gettextizze.
31409
	* loader/i386/linux.c: Include `<grub/i18n.h>'.
31410
	(grub_cmd_linux): Capitalise Linux.
31411
	(GRUB_MOD_INIT): Gettextizze.
31412
	* loader/i386/pc/chainloader.c: Include `<grub/i18n.h>'.
31413
	(GRUB_MOD_INIT): Gettextizze.
31414
	* loader/i386/pc/linux.c: Include `<grub/i18n.h>'.
31415
	(grub_cmd_linux): Capitalise Linux.
31416
	(GRUB_MOD_INIT): Gettextizze.
31417
	* loader/i386/xnu.c: Include `<grub/i18n.h>'.
31418
	(grub_cpu_xnu_init): Gettextizze.
31419
	* loader/multiboot_loader.c: Include `<grub/i18n.h>'.
31420
	(GRUB_MOD_INIT): Gettextizze.
31421
	* loader/powerpc/ieee1275/linux.c: Include `<grub/i18n.h>'.
31422
	(GRUB_MOD_INIT): Gettextizze.
31423
	* loader/sparc64/ieee1275/linux.c: Include `<grub/i18n.h>'.
31424
	(grub_linux_load64): Capitalise Linux.
31425
	(GRUB_MOD_INIT): Gettextizze.
31426
	* loader/xnu.c: Include `<grub/i18n.h>'.
31427
	(GRUB_MOD_INIT): Gettextizze.
31428
	* po/POTFILES: Add `loader/efi/appleloader.c',
31429
	`loader/efi/chainloader.c', `loader/i386/efi/linux.c',
31430
	`loader/i386/ieee1275/linux.c', `loader/i386/linux.c',
31431
	`loader/i386/pc/chainloader.c', `loader/i386/pc/linux.c',
31432
	`loader/i386/xnu.c', `loader/multiboot_loader.c',
31433
	`loader/powerpc/ieee1275/linux.c', `loader/sparc64/ieee1275/linux.c'
31434
	and `loader/xnu.c'.
31435
31436
2010-01-08  Robert Millan  <rmh.grub@aybabtu.com>
31437
31438
	* src/mkisofs.c: Remove `ifdef linux' portability kludge.
31439
31440
2010-01-08  Robert Millan  <rmh.grub@aybabtu.com>
31441
31442
	* util/mkisofs/defaults.h (APPID_DEFAULT): Redefine using PACKAGE_NAME.
31443
	(SYSTEM_ID_DEFAULT): Set to "GNU" unconditionally.
31444
	* util/mkisofs/mkisofs.c (main): Readjust --version output.
31445
31446
2010-01-07  Robert Millan  <rmh.grub@aybabtu.com>
31447
31448
	Reset Multiboot 2 support.  New loader implements the draft in
31449
	/branches/multiboot2 and shares as much code as possible with the
31450
	production Multiboot 1 implementation.
31451
31452
	* loader/ieee1275/multiboot2.c: Remove file.  Update all users.
31453
	* loader/multiboot2.c: Likewise.
31454
	* loader/i386/multiboot_helper.S: Likewise.
31455
	* include/multiboot2.h: Replace with latest version from the draft
31456
	in /branches/multiboot2.
31457
31458
	* conf/i386-coreboot.rmk (multiboot_mod_SOURCES): Remove
31459
	`loader/i386/multiboot_helper.S', `loader/i386/pc/multiboot2.c'
31460
	and `loader/multiboot2.c'.
31461
	(pkglib_MODULES): Add `multiboot2.mod'.
31462
	(multiboot2_mod_SOURCES): New variable.
31463
	(multiboot2_mod_LDFLAGS): Likewise.
31464
	(multiboot2_mod_CFLAGS): Likewise.  Define `GRUB_USE_MULTIBOOT2'.
31465
31466
	* conf/i386-pc.rmk: Likewise.
31467
31468
	* conf/powerpc-ieee1275.rmk (pkglib_MODULES): Remove `multiboot.mod'.
31469
	(multiboot_mod_SOURCES): Remove variable.
31470
	(multiboot_mod_LDFLAGS): Likewise.
31471
	(multiboot_mod_CFLAGS): Likewise.
31472
31473
	* include/grub/multiboot.h [GRUB_USE_MULTIBOOT2]: Include
31474
	`<multiboot2.h>' instead of `<multiboot.h>'.
31475
	[GRUB_USE_MULTIBOOT2] (MULTIBOOT_BOOTLOADER_MAGIC)
31476
	(MULTIBOOT_HEADER_MAGIC): New macros.
31477
31478
	* loader/multiboot_loader.c (module_version_status): Remove variable.
31479
	(find_multi_boot2_header): Remove function.
31480
	(grub_cmd_multiboot_loader): Remove Multiboot 2 / Multiboot 1 selection
31481
	logic.  Always check for the Multiboot version we're compiling for.
31482
	(grub_cmd_module_loader): Likewise.
31483
	[GRUB_USE_MULTIBOOT2] (GRUB_MOD_INIT(multiboot)): Register `multiboot2'
31484
	command instead of `multiboot'.
31485
31486
2010-01-07  Robert Millan  <rmh.grub@aybabtu.com>
31487
31488
	* include/multiboot.h (MULTIBOOT_UNSUPPORTED): Moved from here ...
31489
	* loader/i386/multiboot.c (UNSUPPORTED_FLAGS): ... to here.  Update
31490
	all users.
31491
1.13.5 by Robert Millan
Import upstream version 1.98~20100107
31492
2010-01-07  Robert Millan  <rmh.grub@aybabtu.com>
31493
2010-01-07  Vladimir Serbinenko  <phcoder@gmail.com>
31494
31495
	Fix breakage introduced with previous commit.
31496
31497
	* normal/dyncmd.c (read_command_list): Avoid unregistering kernel
31498
	commands.
31499
	* normal/handler.c (read_handler_list): Revert part of previous commit
31500
	affecting this file.
31501
	* normal/main.c (read_lists): Move read_handler_list() call back to ...
31502
	(grub_normal_execute): ... here.
31503
31504
2010-01-07  Robert Millan  <rmh.grub@aybabtu.com>
31505
31506
	Merge prefix-redefinition-fix branch.
31507
31508
	* normal/autofs.c (read_fs_list): Make function capable of being
31509
	run multiple times, gracefuly replacing the previous data
31510
	structures.
31511
	* normal/dyncmd.c (read_command_list): Likewise.
31512
	* normal/handler.c (read_handler_list): Likewise.
31513
	* normal/main.c (read_lists): New function.  Calls all the
31514
	list reading functions.
31515
	(grub_normal_execute): Use read_lists() instead of calling all
31516
	list reading functions explicitly.  Register read_lists() as a
31517
	variable hook attached to ${prefix}.
31518
31519
2010-01-07  Vladimir Serbinenko  <phcoder@gmail.com>
31520
31521
	Merge crypto branch.
31522
31523
	* Makefile.in (pkglib_DATA):  Add crypto.lst.
31524
	(crypto.lst): New target.
31525
	* commands/hashsum.c: New file.
31526
	* commands/password.c (check_password): Use grub_crypto_memcmp.
31527
	* commands/password_pbkdf2.c: New file.
31528
	* commands/xnu_uuid.c: Remove MD5. Use GRUB_MD_MD5.
31529
	* conf/any-emu.rmk (grub_emu_SOURCES): Add lib/crypto.c,
31530
	normal/crypto.c and lib/libgcrypt-grub/cipher/md5.c.
31531
	(grub_emu_CFLAGS): Add -Wno-missing-field-initializers -Wno-error
31532
	-I$(srcdir)/lib/libgcrypt_wrap.
31533
	* conf/common.rmk (normal_mod_SOURCES): Add normal/crypto.c.
31534
	(pkglib_MODULES): Add crypto.mod, hashsum.mod, pbkdf2.mod and
31535
	password_pbkdf2.mod.
31536
	(crypto_mod_SOURCES): New variable.
31537
	(crypto_mod_CFLAGS): Likewise.
31538
	(crypto_mod_LDFLAGS): Likewise.
31539
	(hashsum_mod_SOURCES): New variable.
31540
	(hashsum_mod_CFLAGS): Likewise.
31541
	(hashsum_mod_LDFLAGS): Likewise.
31542
	(pbkdf2_mod_SOURCES): New variable.
31543
	(pbkdf2_mod_CFLAGS): Likewise.
31544
	(pbkdf2_mod_LDFLAGS): Likewise.
31545
	(password_pbkdf2_mod_SOURCES): New variable.
31546
	(password_pbkdf2_mod_CFLAGS): Likewise.
31547
	(password_pbkdf2_mod_LDFLAGS): Likewise.
31548
	(bin_UTILITIES): Add grub-mkpasswd-pbkdf2.
31549
	(grub_mkpasswd_pbkdf2_SOURCES): New variable.
31550
	(grub_mkpasswd_pbkdf2_CFLAGS): Likewise.
31551
	Include conf/gcry.rmk.
31552
	* include/grub/auth.h: Rewritten.
31553
	* include/grub/crypto.h: New file.
31554
	* include/grub/disk.h (grub_disk_dev_id): Add GRUB_DISK_DEVICE_LUKS_ID.
31555
	* include/grub/normal.h (read_crypto_list): New prototype.
31556
	* lib/crypto.c: New file.
31557
	* lib/libgcrypt_wrap/cipher_wrap.h: Likewise.
31558
	* lib/pbkdf2.c: Likewise.
31559
	* normal/auth.c (grub_auth_strcmp): Removed.
31560
	(grub_iswordseparator): Likewise.
31561
	(grub_auth_strword): Likewise.
31562
	(is_authenticated): Use grub_strword.
31563
	(grub_auth_check_authentication): Use grub_strcmp, grub_password_get
31564
	and grub_strword. Pass entered password to authentication callback.
31565
	* normal/crypto.c: New file.
31566
	* normal/main.c: Call read_crypto_list.
31567
	* util/grub-mkpasswd-pbkdf2.c: New file.
31568
	* util/import_gcry.py: Generate crypto.lst. Add hash blocklen.
31569
31570
2010-01-06  Vladimir Serbinenko  <phcoder@gmail.com>
31571
31572
	Fix descent and ascent calculation.
31573
31574
	* util/grub-mkfont.c (grub_font_info): New fields 'asce' and 'max_y'.
31575
	(options): New option "asce".
31576
	(usage): Likewise.
31577
	(add_char): Ignore invalid glyphs for descent calculation.
31578
	Calculate ascent from actual content.
31579
	(print_glyphs): Use 'asce'.
31580
	(write_font): Likewise. Allow ascent override.
31581
	(main): Handle "asce" option.
31582
31583
2010-01-06  Carles Pina i Estany  <carles@pina.cat>
31584
31585
	* kern/err.c: Include `<grub/i18n.h>'.
31586
	(grub_print_error): Add full stop. Gettextizze.
31587
	* loader/i386/bsd.c (grub_netbsd_boot): Change grub_error description.
31588
	(grub_bsd_load_elf): Capitalise ELF.
31589
	(grub_cmd_freebsd_loadenv): Add `s' in error string.
31590
	(grub_cmd_freebsd_module): Likewise.
31591
	(grub_cmd_freebsd_module_elf): Likewise.
31592
	* loader/i386/bsdXX.c (SUFFIX): Capitalise ELF.
31593
31594
2010-01-06  Carles Pina i Estany  <carles@pina.cat>
31595
31596
	* commands/search.c (GRUB_MOD_INIT): Use HELP_MESSAGE.
31597
	* commands/search_file.c (HELP_MESSAGE): New macro.
31598
	* commands/search_label.c (HELP_MESSAGE): Likewise.
31599
	* commands/search_uuid.c (HELP_MESSAGE): Likewise.
31600
	* po/POTFILES: Add `commands/search_file.c',
31601
	`commands/search_label.c', `commands_uuid.c'. Remove duplicate
31602
	`commands/search.c'.
31603
31604
2010-01-05  Robert Millan  <rmh.grub@aybabtu.com>
31605
31606
	* config.rpath: Update from Gnulib.
31607
31608
2010-01-05  Yves Blusseau  <blusseau@zetam.org>
31609
31610
	* commands/acpi.c (grub_acpi_create_ebda): fix incorrect message.
31611
31612
2010-01-05  Yves Blusseau  <yves.blusseau@zetam.org>
31613
31614
	* util/sparc64/ieee1275/grub-mkimage.c (main): Typo fix.
31615
31616
2010-01-05  Colin Watson  <cjwatson@ubuntu.com>
31617
31618
	* util/mkisofs/write.c (padblock_write): Switch size and nmemb
31619
	arguments to fread so that we get a return value in bytes, rather
31620
	than something that will normally be rounded down to 0.
31621
	Adjust error handling to avoid producing garbage when size_t is not
31622
	the same size as long long.
31623
31624
2010-01-05  Colin Watson  <cjwatson@ubuntu.com>
31625
31626
	* util/mkisofs/write.c (padblock_write): Check return value of
31627
	fread.
31628
31629
2010-01-05  Robert Millan  <rmh.grub@aybabtu.com>
31630
31631
	Remove grub-mkfloppy.  Images produced by grub-mkrescue are valid
31632
	floppy images now.
31633
31634
	* util/i386/pc/grub-mkfloppy.in: Remove.  Update all users.
31635
31636
2010-01-04  Robert Millan  <rmh.grub@aybabtu.com>
31637
31638
	* disk/i386/pc/biosdisk.c (grub_biosdisk_rw): Use ALIGN_UP macro
31639
	instead of manual alignment.
31640
	* kern/disk.c (grub_disk_read): Remove grub_dprintf call (excessively
31641
	verbose).  Avoid attempts to read past end of the device
31642
	(grub_disk_adjust_range() guarantees that we can read `size' bytes,
31643
	but GRUB_DISK_CACHE_SIZE may exceed that).
31644
31645
2010-01-04  Robert Millan  <rmh.grub@aybabtu.com>
31646
31647
	* commands/crc.c (grub_cmd_crc): Abort on read errors.
31648
	* fs/iso9660.c (grub_iso9660_read): Check for read error and pass
31649
	it to upper layer.
31650
31651
2010-01-04  Vladimir Serbinenko  <phcoder@gmail.com>
31652
31653
	* include/grub/efi/api.h (GRUB_EFI_PIWG_DEVICE_PATH_SUBTYPE):
31654
	New constant.
31655
	(grub_efi_piwg_device_path): New structure
31656
	(grub_efi_piwg_device_path_t): New type.
31657
	* loader/efi/appleloader.c (piwg_full_device_path): New structure.
31658
	(devpath_1): Transform to a structure. All users updated.
31659
	(devpath_2): Likewise.
31660
	(devpath_3): Likewise.
31661
	(devpath_4): Likewise.
31662
	(devpath_5): Likewise.
31663
31664
2010-01-04  Vladimir Serbinenko  <phcoder@gmail.com>
31665
31666
	* loader/efi/appleloader.c: Restored. Update all users.
31667
31668
2010-01-03  Robert Millan  <rmh.grub@aybabtu.com>
31669
31670
	* boot/i386/pc/diskboot.S: Fix inaccurate comment.
31671
31672
	* util/i386/pc/grub-setup.c: Include `<assert.h>'.
31673
	(struct boot_blocklist): Move from here ...
31674
	* include/grub/i386/pc/boot.h [ASM_FILE]
31675
	(struct grub_boot_blocklist): ... to here.  Update all users.
31676
	(setup): Only initialize `start' member of `first_block'
31677
	structure.  Add assert() calls to verify the other members.
31678
31679
	* util/i386/pc/grub-mkimage.c: Include `<assert.h>'.
31680
	(generate_image): Fix broken blocklist length initialization.
31681
	Add assert() call to verify blocklist `segment' field.
31682
31683
2010-01-03  Robert Millan  <rmh.grub@aybabtu.com>
31684
31685
	* loader/efi/appleloader.c: Remove.  Update all users.
31686
31687
2010-01-03  Robert Millan  <rmh.grub@aybabtu.com>
31688
31689
	* boot/i386/pc/boot.S: Update copyright year.
31690
	* boot/i386/pc/cdboot.S: Likewise.
31691
	* boot/i386/pc/diskboot.S: Likewise.
31692
	* boot/i386/pc/lnxboot.S: Likewise.
31693
	* boot/i386/pc/pxeboot.S: Likewise.
31694
	* bus/pci.c: Likewise.
31695
	* commands/cmp.c: Likewise.
31696
	* commands/help.c: Likewise.
31697
	* commands/hexdump.c: Likewise.
31698
	* commands/i386/pc/halt.c: Likewise.
31699
	* commands/i386/pc/play.c: Likewise.
31700
	* commands/i386/pc/vbeinfo.c: Likewise.
31701
	* commands/ls.c: Likewise.
31702
	* commands/test.c: Likewise.
31703
	* disk/dmraid_nvidia.c: Likewise.
31704
	* disk/i386/pc/biosdisk.c: Likewise.
31705
	* disk/ieee1275/nand.c: Likewise.
31706
	* disk/ieee1275/ofdisk.c: Likewise.
31707
	* disk/lvm.c: Likewise.
31708
	* disk/raid.c: Likewise.
31709
	* disk/raid6_recover.c: Likewise.
31710
	* disk/scsi.c: Likewise.
31711
	* fs/affs.c: Likewise.
31712
	* fs/cpio.c: Likewise.
31713
	* fs/ext2.c: Likewise.
31714
	* fs/hfs.c: Likewise.
31715
	* fs/iso9660.c: Likewise.
31716
	* fs/ntfs.c: Likewise.
31717
	* fs/sfs.c: Likewise.
31718
	* fs/udf.c: Likewise.
31719
	* fs/ufs.c: Likewise.
31720
	* fs/xfs.c: Likewise.
31721
	* gencmdlist.sh: Likewise.
31722
	* genmk.rb: Likewise.
31723
	* include/grub/disk.h: Likewise.
31724
	* include/grub/efi/api.h: Likewise.
31725
	* include/grub/efi/efi.h: Likewise.
31726
	* include/grub/efi/pe32.h: Likewise.
31727
	* include/grub/elf.h: Likewise.
31728
	* include/grub/fs.h: Likewise.
31729
	* include/grub/i386/at_keyboard.h: Likewise.
31730
	* include/grub/i386/pc/memory.h: Likewise.
31731
	* include/grub/i386/pc/vbe.h: Likewise.
31732
	* include/grub/i386/pci.h: Likewise.
31733
	* include/grub/i386/tsc.h: Likewise.
31734
	* include/grub/ieee1275/ieee1275.h: Likewise.
31735
	* include/grub/ntfs.h: Likewise.
31736
	* include/grub/sparc64/ieee1275/ieee1275.h: Likewise.
31737
	* include/grub/sparc64/libgcc.h: Likewise.
31738
	* include/grub/symbol.h: Likewise.
31739
	* include/grub/types.h: Likewise.
31740
	* include/multiboot2.h: Likewise.
31741
	* io/gzio.c: Likewise.
31742
	* kern/device.c: Likewise.
31743
	* kern/disk.c: Likewise.
31744
	* kern/efi/efi.c: Likewise.
31745
	* kern/efi/mm.c: Likewise.
31746
	* kern/elf.c: Likewise.
31747
	* kern/file.c: Likewise.
31748
	* kern/i386/dl.c: Likewise.
31749
	* kern/i386/pc/init.c: Likewise.
31750
	* kern/i386/pc/startup.S: Likewise.
31751
	* kern/ieee1275/ieee1275.c: Likewise.
31752
	* kern/ieee1275/init.c: Likewise.
31753
	* kern/main.c: Likewise.
31754
	* kern/mm.c: Likewise.
31755
	* kern/powerpc/dl.c: Likewise.
31756
	* kern/sparc64/dl.c: Likewise.
31757
	* kern/x86_64/dl.c: Likewise.
31758
	* lib/hexdump.c: Likewise.
31759
	* loader/efi/appleloader.c: Likewise.
31760
	* loader/i386/ieee1275/linux.c: Likewise.
31761
	* loader/i386/pc/chainloader.c: Likewise.
31762
	* loader/i386/pc/linux.c: Likewise.
31763
	* loader/i386/pc/multiboot2.c: Likewise.
31764
	* loader/ieee1275/multiboot2.c: Likewise.
31765
	* loader/multiboot2.c: Likewise.
31766
	* loader/multiboot_loader.c: Likewise.
31767
	* loader/powerpc/ieee1275/linux.c: Likewise.
31768
	* normal/completion.c: Likewise.
31769
	* normal/menu_entry.c: Likewise.
31770
	* partmap/apple.c: Likewise.
31771
	* util/grub.d/10_hurd.in: Likewise.
31772
	* util/hostfs.c: Likewise.
31773
	* video/readers/png.c: Likewise.
31774
31775
2010-01-03  Colin Watson  <cjwatson@ubuntu.com>
31776
31777
	* include/grub/misc.h (GNUC_PREREQ): New macro.
31778
	(ATTRIBUTE_ERROR): New macro.
31779
	* include/grub/list.h (grub_bad_type_cast_real): Use
31780
	ATTRIBUTE_ERROR.
31781
31782
2010-01-03  Carles Pina i Estany  <carles@pina.cat>
31783
31784
	* normal/menu_text.c (print_message): Change messages.
31785
31786
2010-01-03  Carles Pina i Estany  <carles@pina.cat>
31787
31788
	* normal/menu_entry.c (store_completion): Gettextizze.
31789
31790
2010-01-03  Carles Pina i Estany  <carles@pina.cat>
31791
31792
	* kern/env.c (grub_env_unset): Set the variable to "" if has hooks.
31793
31794
2010-01-03  Carles Pina i Estany  <carles@pina.cat>
31795
31796
	* po/POTFILES: Sort correctly.
31797
31798
2010-01-03  Carles Pina i Estany  <carles@pina.cat>
31799
31800
	* commands/acpi.c (GRUB_MOD_INIT): Capitalise some words from help.
31801
	* commands/efi/loadbios.c (GRUB_MOD_INIT): Capitalise BIOS.
31802
	* commands/i386/pc/drivemap.c (GRUB_MOD_INIT): Remove space. Add
31803
	full stop.
31804
	* commands/loadenv.c (GRUB_MOD_INIT): Remove command name from
31805
	summary. Gettextizze the strings.
31806
	* commands/probe.c (grub_cmd_probe): Capitalise UUID and FS.
31807
	* commands/xnu_uuid.c (GRUB_MOD_INIT): Capitalise XNU.
31808
	* disk/loopback.c (grub_arg_options): Capitalise first letter. Add
31809
	full stop.
31810
	(GRUB_MOD_INIT): Remove command name from summary.
31811
	* hello/hello.c (GRUD_MOT_INIT): Add missing full stop. Improve the
31812
	summary.
31813
	* loader/i386/bsd.c (grub_arg_option): Capitalise CDROM.
31814
	* term/i386/pc/serial.c (options): Add full stops.
31815
	(GRUB_MOD_INIT): Remove command name from the summary.
31816
31817
2010-01-03  Carles Pina i Estany  <carles@pina.cat>
31818
31819
	* commands/acpi.c: Gettextizze help strings and/or options. Include
31820
	`grub/i18n.h' if needed.
31821
	* commands/blocklist.c: Likewise.
31822
	* commands/boot.c: Likewise.
31823
	* commands/cat.c: Likewise.
31824
	* commands/cmp.c: Likewise.
31825
	* commands/configfile.c: Likewise.
31826
	* commands/crc.c: Likewise.
31827
	* commands/date.c: Likewise.
31828
	* commands/echo.c: Likewise.
31829
	* commands/efi/fixvideo.c: Likewise.
31830
	* commands/efi/loadbios.c: Likewise.
31831
	* commands/gptsync.c: Likewise.
31832
	* commands/halt.c: Likewise.
31833
	* commands/handler.c: Likewise.
31834
	* commands/hdparm.c: Likewise.
31835
	* commands/hexdump.c: Likewise.
31836
	* commands/i386/cpuid.c: Likewise.
31837
	* commands/i386/pc/drivemap.c: Likewise.
31838
	* commands/i386/pc/halt.c: Likewise.
31839
	* commands/i386/pc/pxecmd.c: Likewise.
31840
	* commands/i386/pc/vbeinfo.c: Likewise.
31841
	* commands/i386/pc/vbetest.c: Likewise.
31842
	* commands/ieee1275/suspend.c: Likewise.
31843
	* commands/keystatus.c: Likewise.
31844
	* commands/loadenv.c: Likewise.
31845
	* commands/ls.c: Likewise.
31846
	* commands/lsmmap.c: Likewise.
31847
	* commands/lspci.c: Likewise.
31848
	* commands/memrw.c: Likewise.
31849
	* commands/minicmd.c: Likewise.
31850
	* commands/parttool.c: Likewise.
31851
	* commands/password.c: Likewise.
31852
	* commands/probe.c: Likewise.
31853
	* commands/read.c: Likewise.
31854
	* commands/reboot.c: Likewise.
31855
	* commands/search.c: Likewise.
31856
	* commands/sleep.c: Likewise.
31857
	* commands/test.c: Likewise.
31858
	* commands/true.c: Likewise.
31859
	* commands/usbtest.c: Likewise.
31860
	* commands/videotest.c: Likewise.
31861
	* commands/xnu_uuid.c: Likewise.
31862
	* disk/loopback.c: Likewise.
31863
	* hello/hello.c: Likewise.
31864
	* loader/i386/bsd.c: Likewise.
31865
	* term/i386/pc/serial.c: Likewise.
31866
	* po/POTFILES: Add new files.
31867
31868
2010-01-02  Colin Watson  <cjwatson@ubuntu.com>
31869
31870
	* term/i386/pc/at_keyboard.c
31871
	(keyboard_controller_wait_untill_ready): Rename to ...
31872
	(keyboard_controller_wait_until_ready): ... this. Update all users.
31873
31874
2010-01-01  Carles Pina i Estany  <carles@pina.cat>
31875
31876
	* commands/help.c: Include `grub/mm.h' and `grub/normal.h'.
31877
	(grub_cmd_help): Print the cmd->name before the cmd->summary. Cut the
31878
	string using string width.
31879
	* normal/menu_text.c (grub_print_message_indented): Use
31880
	grub_print_spaces and not print_spaces.
31881
	(print_timeout): Likewise.
31882
	(print_spaces): Move to...
31883
	* include/grub/term.h: ... here. Change the name to grub_print_spaces.
31884
31885
2010-01-01  Robert Millan  <rmh.grub@aybabtu.com>
31886
31887
	Import from Gnulib.
31888
31889
	* gnulib/getdelim.c: New file.
31890
	* gnulib/getline.c: Likewise.
31891
24 by Felix Zielcke, Robert Millan, Felix Zielcke
* New Bazaar snapshot.
31892
2009-12-31 BVK Chaitanya  <bvk.groups@gmail.com>
31893
31894
	* include/grub/list.h (grub_assert_fail): Removed.
31895
	(grub_bad_type_cast_real): New function.
31896
	(grub_bad_type_cast): New macro.
31897
	(GRUB_AS_LIST): Use grub_bad_type_cast.
31898
	(GRUB_AS_LIST_P): Likewise.
31899
	(GRUB_AS_NAMED_LIST): Likewise.
31900
	(GRUB_AS_NAMED_LIST_P): Likewise.
31901
	(GRUB_AS_PRIO_LIST): Likewise.
31902
	(GRUB_AS_PRIO_LIST_P): Likewise.
31903
	* include/grub/handler.h (GRUB_AS_HANDLER): Likewise.
31904
31905
2009-12-29 Vladimir Serbinenko  <phcoder@gmail.com>
31906
31907
	* loader/sparc64/ieee1275/linux.c (GRUB_MOD_INIT (linux)):
31908
	Fix syntax error.
31909
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
31910
2009-12-29  Robert Millan  <rmh.grub@aybabtu.com>
31911
31912
	* configure.ac: Check for TARGET_CFLAGS initialization before we
31913
	initialize it ourselves (sigh).
31914
	Move a few modifications to TARGET_CFLAGS to be unconditional
31915
	(extra warning flags, loop alignment, i386 CPU extensions, GCC 4.4
31916
	eh_frame)
31917
31918
	* gettext/gettext.c (grub_gettext_delete_list): Add `void' argument.
31919
	* term/i386/pc/at_keyboard.c
31920
	(keyboard_controller_wait_untill_ready): Likewise.
31921
	(keyboard_controller_led): Rename `led_status' paramter to avoid
31922
	name conflict.
31923
31924
2009-12-28  Carles Pina i Estany  <carles@pina.cat>
31925
31926
	* normal/misc.c (grub_normal_print_device_info): Add spaces and double
31927
	quotes.
31928
31929
2009-12-27  Vladimir Serbinenko  <phcoder@gmail.com>
31930
31931
	* kern/parser.c (grub_parser_split_cmdline): Don't dereference NULL.
31932
31933
2009-12-27  Vladimir Serbinenko  <phcoder@gmail.com>
31934
31935
	* normal/menu_text.c (grub_print_message_indented): Prevent
31936
	past-the-end-of-array dereference.
31937
31938
2009-12-27  Vladimir Serbinenko  <phcoder@gmail.com>
31939
31940
	* video/readers/jpeg.c (GRUB_MOD_FINI (grub_cmd_jpegtest)): Rename to ..
31941
	(GRUB_MOD_FINI (video_reader_jpeg)): ...this
31942
31943
2009-12-27  Carles Pina i Estany  <carles@pina.cat>
31944
31945
	* normal/cmdline.c (grub_cmdline_get): Print a space after prompt.
31946
	* normal/main.c (grub_normal_read_line): Remove a space from the
31947
	default prompt.
31948
31949
2009-12-27  Carles Pina i Estany  <carles@pina.cat>
31950
31951
	* loader/i386/efi/linux.c (GRUB_MOD_INIT): Improve command summary.
31952
	* loader/i386/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
31953
	* loader/i386/linux.c (GRUB_MOD_INIT): Likewise.
31954
	* loader/i386/pc/linux.c (GRUB_MOD_INIT): Likewise.
31955
	* loader/powerpc/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
31956
	* loader/sparc64/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
31957
	* loader/xnu.c (GRUB_MOD_INIT): Likewise.
31958
31959
2009-12-26  Carles Pina i Estany  <carles@pina.cat>
31960
31961
	* video/readers/jpeg.c (cmd): Declare.
31962
	(grub_cmd_jpegtest): Use `grub_command_t' type.
31963
	(GRUB_MOD_INIT): Fix arguments passed to `grub_register_command'.
31964
	Assign to `cmd'.
31965
	(GRUB_MOD_FINI): Use `cmd' to unregister.
31966
	* video/readers/png.c (cmd): Declare.
31967
	(grub_cmd_pngtest): Use `grub_command_t' type.
31968
	(GRUB_MOD_INIT): Fix arguments passed to `grub_register_command'.
31969
	Assign to `cmd'.
31970
	(GRUB_MOD_FINI): Use `cmd' to unregister.
31971
	* video/readers/tga.c (cmd): Declare.
31972
	(grub_cmd_tgatest): Use `grub_command_t' type.
31973
	(GRUB_MOD_INIT): Fix arguments passed to `grub_register_command'.
31974
	Assign to `cmd'.
31975
	(GRUB_MOD_FINI): Use `cmd' to unregister.
31976
31977
2009-12-26  Carles Pina i Estany  <carles@pina.cat>
31978
31979
	* efiemu/main.c (GRUB_MOD_INIT): Fix capitalizations and/or full
31980
	stops.
31981
	* kern/corecmd.c (grub_register_core_commands): Likewise.
31982
	* loader/efi/chainloader.c (GRUB_MOD_INIT): Likewise.
31983
	* loader/i386/bsd.c (GRUB_MOD_INIT): Likewise.
31984
	* loader/i386/efi/linux.c (GRUB_MOD_INIT): Likewise.
31985
	* loader/i386/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
31986
	* loader/i386/linux.c (GRUB_MOD_INIT): Likewise.
31987
	* loader/i386/pc/chainloader.c (GRUB_MOD_INIT): Likewise.
31988
	* loader/i386/pc/linux.c (GRUB_MOD_INIT): Likewise.
31989
	* loader/multiboot_loader.c (GRUB_MOD_INIT): Likewise.
31990
	* loader/powerpc/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
31991
	* loader/sparc64/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
31992
	* loader/xnu.c (GRUB_MOD_INIT): Likewise.
31993
	* mmap/mmap.c (GRUB_MOD_INIT): Likewise.
31994
	* normal/handler.c (insert_handler): Likewise.
31995
	* normal/main.c (GRUB_MOD_INIT): Likewise.
31996
	* term/gfxterm.c (GRUB_MOD_INIT): Likewise.
31997
31998
2009-12-26  Carles Pina i Estany  <carles@pina.cat>
31999
32000
	* commands/help.c (grub_cmd_help): Print the command name before the
32001
	summary.
32002
	(GRUB_MOD_INIT): Remove command name from the summary.
32003
	* kern/command.c (GRUB_MOD_INIT): If summary is null assign an empty
32004
	string as summary.
32005
	* lib/arg.c (find_long): Print the command name before the summary.
32006
	* commands/acpi.c (GRUB_MOD_INIT): Remove command name from the
32007
	summary.
32008
	* commands/blocklist.c (GRUB_MOD_INIT): Likewise.
32009
	* commands/cat.c (GRUB_MOD_INIT): Likewise.
32010
	* commands/cmp.c (GRUB_MOD_INIT): Likewise.
32011
	* commands/configfile.c (GRUB_MOD_INIT): Likewise.
32012
	* commands/crc.c (GRUB_MOD_INIT): Likewise.
32013
	* commands/date.c (GRUB_MOD_INIT): Likewise.
32014
	* commands/echo.c (GRUB_MOD_INIT): Likewise.
32015
	* commands/efi/loadbios.c (GRUB_MOD_INIT): Likewise.
32016
	* commands/gptsync.c (GRUB_MOD_INIT): Likewise.
32017
	* commands/handler.c (GRUB_MOD_INIT): Likewise.
32018
	* commands/hdparm.c (GRUB_MOD_INIT): Likewise.
32019
	* commands/hexdump.c (GRUB_MOD_INIT): Likewise.
32020
	* commands/i386/cpuid.c (GRUB_MOD_INIT): Likewise.
32021
	* commands/i386/pc/halt.c (GRUB_MOD_INIT): Likewise.
32022
	* commands/i386/pc/play.c (GRUB_MOD_INIT): Likewise.
32023
	* commands/i386/pc/pxecmd.c (GRUB_MOD_INIT): Likewise.
32024
	* commands/keystatus.c (GRUB_MOD_INIT): Likewise.
32025
	* commands/loadenv.c (GRUB_MOD_INIT): Likewise.
32026
	* commands/ls.c (GRUB_MOD_INIT): Likewise.
32027
	* commands/lspci.c (GRUB_MOD_INIT): Likewise.
32028
	* commands/memrw.c (GRUB_MOD_INIT): Likewise.
32029
	* commands/minicmd.c (GRUB_MOD_INIT): Likewise.
32030
	* commands/parttool.c (GRUB_MOD_INIT): Likewise.
32031
	* commands/password.c (GRUB_MOD_INIT): Likewise.
32032
	* commands/probe.c (GRUB_MOD_INIT): Likewise.
32033
	* commands/read.c (GRUB_MOD_INIT): Likewise.
32034
	* commands/search.c (GRUB_MOD_INIT): Likewise.
32035
	* commands/sleep.c (GRUB_MOD_INIT): Likewise.
32036
	* commands/test.c (GRUB_MOD_INIT): Likewise.
32037
	* commands/xnu_uuid.c (GRUB_MOD_INIT): Likewise.
32038
	* efiemu/main.c (GRUB_MOD_INIT): Likewise.
32039
	* font/font_cmd.c (GRUB_MOD_INIT): Likewise.
32040
	* gettext/gettext.c (GRUB_MOD_INIT): Likewise.
32041
	* kern/corecmd.c (GRUB_MOD_INIT): Likewise.
32042
	* lib/arg.c (GRUB_MOD_INIT): Likewise.
32043
	* loader/efi/appleloader.c (GRUB_MOD_INIT): Likewise.
32044
	* loader/i386/bsd.c (GRUB_MOD_INIT): Likewise.
32045
	* loader/xnu.c (GRUB_MOD_INIT): Likewise.
32046
	* mmap/mmap.c (GRUB_MOD_INIT): Likewise.
32047
	* term/terminfo.c (GRUB_MOD_INIT): Likewise.
32048
	* video/readers/jpeg.c (GRUB_MOD_INIT): Likewise.
32049
	* video/readers/png.c (GRUB_MOD_INIT): Likewise.
32050
	* video/readers/tga.c (GRUB_MOD_INIT): Likewise.
32051
32052
2009-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
32053
32054
	Use search command for preliminar UUID search.
32055
32056
	* commands/search.c: Split into ...
32057
	* commands/search_wrap.c: ...this
32058
	* commands/search.c: ...and this.
32059
	* commands/search_file.c: New file.
32060
	* commands/search_label.c: New file.
32061
	* commands/search_uuid.c: New file.
32062
	* conf/any-emu.rmk (grub_emu_SOURCES): Remove commands/search.c.
32063
	Add commands/search_wrap.c, commands/search_file.c,
32064
	commands/search_label.c and commands/search_uuid.c.
32065
	* conf/common.rmk (pkglib_MODULES): Remove fs_uuid.mod and fs_file.mod.
32066
	(search_mod_SOURCES): Set to commands/search_wrap.c.
32067
	(pkglib_MODULES): Add search_fs_file.mod, search_fs_uuid.mod and
32068
	search_label.mod.
32069
	(search_fs_file_mod_SOURCES): New variable.
32070
	(search_fs_file_mod_CFLAGS): Likewise.
32071
	(search_fs_file_mod_LDFLAGS): Likewise.
32072
	(search_label_mod_SOURCES): Likewise.
32073
	(search_label_mod_CFLAGS): Likewise.
32074
	(search_label_mod_LDFLAGS): Likewise.
32075
	(search_fs_uuid_mod_SOURCES): New variable.
32076
	(search_fs_uuid_mod_CFLAGS): Likewise.
32077
	(search_fs_uuid_mod_LDFLAGS): Likewise.
32078
	(fs_file_mod_SOURCES): Removed.
32079
	(fs_file_mod_CFLAGS): Likewise.
32080
	(fs_file_mod_LDFLAGS): Likewise.
32081
	(fs_uuid_mod_SOURCES): Removed.
32082
	(fs_uuid_mod_CFLAGS): Likewise.
32083
	(fs_uuid_mod_LDFLAGS): Likewise.
32084
	* conf/sparc64-ieee1275.rmk (grub_install_SOURCES):
32085
	Set to util/grub-install.in.
32086
	* disk/fs_file.c: Removed.
32087
	* disk/fs_uuid.c: Likewise.
32088
	* include/grub/search.h: New file.
32089
	* util/grub-install.in: Handle sparc64.
32090
	Create and use load.cfg.
32091
	* util/sparc64/ieee1275/grub-install.in: Removed.
32092
32093
2009-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
32094
32095
	* kern/i386/pc/startup.S (grub_biosdisk_get_diskinfo_int13_extensions):
32096
	Ignore return status if CF is cleared.
32097
	(grub_biosdisk_get_diskinfo_standard): Likewise.
32098
32099
2009-12-25  Robert Millan  <rmh.grub@aybabtu.com>
32100
32101
	* term/i386/pc/at_keyboard.c
32102
	(keyboard_controller_wait_untill_ready): New function.
32103
	(grub_keyboard_controller_write, grub_keyboard_controller_read)
32104
	(keyboard_controller_led): Use keyboard_controller_wait_untill_ready()
32105
	for keyboard polling, rather than duplicate the same loop.  This
32106
	saves a few bytes in code size.
32107
32108
2009-12-25  Vladimir Serbinenko  <phcoder@gmail.com>
32109
32110
	Support for (pxe[:server[:gateway]]) syntax and
32111
	use environment variable for PXE.
32112
32113
	* commands/i386/pc/pxecmd.c (options): Removed.
32114
	(print_ip): Removed.
32115
	(grub_cmd_pxe): Removed
32116
	(grub_cmd_pxe_unload): New function.
32117
	* fs/i386/pc/pxe.c (grub_pxe_disk_data): New structure.
32118
	(grub_pxe_your_ip): Made static.
32119
	(grub_pxe_default_server_ip): Likewise.
32120
	(grub_pxe_default_gateway_ip): Likewise.
32121
	(grub_pxe_blksize): Likewise.
32122
	(parse_ip): New function.
32123
	(grub_pxe_open): Support server and gateway specification.
32124
	(grub_pxe_close): Free disk->data.
32125
	(grub_pxefs_open): Use disk->data.
32126
	(grub_pxefs_read): Likewise.
32127
	(grub_env_write_readonly): New function.
32128
	(set_mac_env): Likewise.
32129
	(set_env_limn_ro): Likewise.
32130
	(parse_dhcp_vendor): Likewise.
32131
	(grub_pxe_detect): Set the environment variables.
32132
	(set_ip_env): New function.
32133
	(write_ip_env): Likewise.
32134
	(grub_env_write_pxe_default_server): Likewise.
32135
	(grub_env_write_pxe_default_gateway): Likewise.
32136
	(grub_env_write_pxe_blocksize): Likewise.
32137
	(GRUB_MOD_INIT(pxe)): Set environment variables.
32138
	* include/grub/i386/pc/pxe.h (grub_pxe_mac_addr): Rename to ...
32139
	(grub_pxe_mac_addr_t): ... this. All users updated.
32140
	(grub_pxe_your_ip): Removed.
32141
	(grub_pxe_server_ip): Likewise.
32142
	(grub_pxe_gateway_ip): Likewise.
32143
	(grub_pxe_blksize): Likewise.
32144
32145
2009-12-25  Carles Pina i Estany  <carles@pina.cat>
32146
32147
	* commands/help.c: Include `<grub/i18n.h>'.
32148
	(grub_cmd_help): Gettextizze.
32149
	(GRUB_MOD_INIT): Likewise.
32150
	* commands/i386/pc/play.c: Include `<grub/i18n.h>'.
32151
	(GRUB_MOD_INIT): Gettextizze.
32152
	* commands/search.c: Include `<grub/i18n.h>'.
32153
	(options): Gettextizze.
32154
	(GRUB_MOD_INIT): Gettextizze.
32155
	* lib/arg.c: Include `<grub/i18n.h>'.
32156
	(help_options): Gettextizze.
32157
	(find_long): Likewise.
32158
	(grub_arg_show_help): Likewise.
32159
	* normal/dyncmd.c: Include `<grub/i18n.h>'.
32160
	(read_command_list): Gettextizze.
32161
	* po/POTFILES: Add `commands/i386/pc/play.c', `commands/search.c',
32162
	`commands/help.c', `lib/arg.c' and `normal/dyncmd.c'.
32163
32164
2009-12-25  Robert Millan  <rmh.grub@aybabtu.com>
32165
32166
	* include/grub/i386/at_keyboard.h (NUM_LOCK, SCROLL_LOCK): New macros.
32167
	* term/i386/pc/at_keyboard.c (KEYBOARD_STATUS_NUM_LOCK)
32168
	(KEYBOARD_LED_SCROLL, KEYBOARD_LED_NUM, KEYBOARD_LED_CAPS): New macros.
32169
	(led_status): New variable.
32170
	(keyboard_controller_led): New function.
32171
	(grub_at_keyboard_getkey_noblock): Handle num lock and scroll lock,
32172
	update led status for caps lock, num lock and scroll lock.
32173
32174
2009-12-25  Felix Zielcke <fzielcke@z-51.de>
32175
32176
	* util/hostdisk.c (open_device): Fix a comment.
32177
32178
2009-12-24  Robert Millan  <rmh.grub@aybabtu.com>
32179
32180
	* util/grub-install.in (host_os): New variable.
32181
	* util/i386/efi/grub-install.in (host_os): Likewise.
32182
32183
2009-12-24  Robert Millan  <rmh.grub@aybabtu.com>
32184
32185
	* util/mkisofs/write.c (padblock_write): Abort when given an
32186
	excedingly large embed image, instead of silently truncating it.
32187
32188
2009-12-24  Robert Millan  <rmh.grub@aybabtu.com>
32189
32190
	* include/multiboot.h: Indentation fixes.
32191
32192
2009-12-24  Robert Millan  <rmh.grub@aybabtu.com>
32193
32194
	* include/multiboot.h (struct multiboot_aout_symbol_table)
32195
	(struct multiboot_elf_section_header_table): New structure
32196
	declarations (stolen from GRUB Legacy).
32197
	(struct multiboot_info): Replace opaque `syms' with a.out and ELF
32198
	table information.
32199
32200
	(multiboot_aout_symbol_table_t, multiboot_elf_section_header_table_t)
32201
	(multiboot_info_t, multiboot_memory_map_t, multiboot_module_t): New
32202
	type aliases.
32203
32204
2009-12-24  Robert Millan  <rmh.grub@aybabtu.com>
32205
32206
	* include/multiboot.h: Make comments src2texi-friendly.
32207
32208
2009-12-24  Robert Millan  <rmh.grub@aybabtu.com>
32209
32210
	For consistency with [multiboot]/docs/boot.S.
32211
32212
	* include/multiboot.h (MULTIBOOT_MAGIC): Rename from this ...
32213
	(MULTIBOOT_HEADER_MAGIC): ... to this.  Update all users.
32214
	(MULTIBOOT_MAGIC2): Rename from this ...
32215
	(MULTIBOOT_BOOTLOADER_MAGIC): ... to this.  Update all users.
32216
32217
2009-12-24  Robert Millan  <rmh.grub@aybabtu.com>
32218
32219
	* include/multiboot.h: Remove `<grub/types.h>'.
32220
	(multiboot_uint16_t, multiboot_uint32_t, multiboot_uint64_t): New
32221
	types.  Update all users.
32222
32223
2009-12-25  Carles Pina i Estany  <carles@pina.cat>
32224
32225
	* commands/efi/loadbios.c: Capitalize acronyms, replace `could not' by
32226
	`couldn't' and `can not' by `cannot'.
32227
	* commands/i386/pc/drivemap.c: Likewise.
32228
	* disk/ata.c: Likewise.
32229
	* disk/ieee1275/nand.c: Likewise.
32230
	* fs/affs.c: Likewise.
32231
	* fs/fat.c: Likewise.
32232
	* fs/hfs.c: Likewise.
32233
	* fs/hfsplus.c: Likewise.
32234
	* fs/iso9660.c: Likewise.
32235
	* fs/jfs.c: Likewise.
32236
	* fs/minix.c: Likewise.
32237
	* fs/reiserfs.c: Likewise.
32238
	* fs/sfs.c: Likewise.
32239
	* fs/udf.c: Likewise.
32240
	* fs/ufs.c: Likewise.
32241
	* fs/xfs.c: Likewise.
32242
	* loader/powerpc/ieee1275/linux.c: Likewise.
32243
	* loader/sparc64/ieee1275/linux.c: Likewise.
32244
	* util/grub-probe.c: Likewise.
32245
	* util/misc.c: Likewise.
32246
32247
2009-12-24  Carles Pina i Estany  <carles@pina.cat>
32248
32249
	* bus/usb/usbhub.c: Fix capitalization, fullstop and newlines in
32250
	grub_errno calls.
32251
	* commands/acpi.c: Likewise.
32252
	* commands/blocklist.c: Likewise.
32253
	* commands/efi/loadbios.c: Likewise.
32254
	* commands/i386/pc/drivemap.c: Likewise.
32255
	* commands/loadenv.c: Likewise.
32256
	* commands/memrw.c: Likewise.
32257
	* commands/password.c: Likewise.
32258
	* commands/videotest.c: Likewise.
32259
	* disk/ata.c: Likewise.
32260
	* disk/ata_pthru.c: Likewise.
32261
	* disk/dmraid_nvidia.c: Likewise.
32262
	* disk/ieee1275/nand.c: Likewise.
32263
	* disk/ieee1275/ofdisk.c: Likewise.
32264
	* disk/loopback.c: Likewise.
32265
	* disk/lvm.c: Likewise.
32266
	* disk/mdraid_linux.c: Likewise.
32267
	* disk/raid.c: Likewise.
32268
	* disk/raid6_recover.c: Likewise.
32269
	* disk/scsi.c: Likewise.
32270
	* efiemu/main.c: Likewise.
32271
	* efiemu/mm.c: Likewise.
32272
	* efiemu/pnvram.c: Likewise.
32273
	* efiemu/symbols.c: Likewise.
32274
	* font/font.c: Likewise.
32275
	* fs/cpio.c: Likewise.
32276
	* fs/hfsplus.c: Likewise.
32277
	* fs/iso9660.c: Likewise.
32278
	* fs/jfs.c: Likewise.
32279
	* fs/minix.c: Likewise.
32280
	* fs/ntfs.c: Likewise.
32281
	* fs/ntfscomp.c: Likewise.
32282
	* fs/reiserfs.c: Likewise.
32283
	* fs/ufs.c: Likewise.
32284
	* fs/xfs.c: Likewise.
32285
	* gettext/gettext.c: Likewise.
32286
	* include/grub/auth.h: Likewise.
32287
	* kern/elf.c: Likewise.
32288
	* kern/file.c: Likewise.
32289
	* kern/ieee1275/init.c: Likewise.
32290
	* kern/ieee1275/mmap.c: Likewise.
32291
	* kern/ieee1275/openfw.c: Likewise.
32292
	* kern/powerpc/dl.c: Likewise.
32293
	* kern/sparc64/dl.c: Likewise.
32294
	* lib/arg.c: Likewise.
32295
	* loader/i386/bsd.c: Likewise.
32296
	* loader/i386/bsdXX.c: Likewise.
32297
	* loader/i386/efi/linux.c: Likewise.
32298
	* loader/i386/efi/xnu.c: Likewise.
32299
	* loader/i386/ieee1275/linux.c: Likewise.
32300
	* loader/i386/linux.c: Likewise.
32301
	* loader/i386/multiboot.c: Likewise.
32302
	* loader/i386/pc/linux.c: Likewise.
32303
	* loader/i386/pc/multiboot2.c: Likewise.
32304
	* loader/i386/xnu.c: Likewise.
32305
	* loader/ieee1275/multiboot2.c: Likewise.
32306
	* loader/macho.c: Likewise.
32307
	* loader/machoXX.c: Likewise.
32308
	* loader/multiboot2.c: Likewise.
32309
	* loader/multiboot_loader.c: Likewise.
32310
	* loader/powerpc/ieee1275/linux.c: Likewise.
32311
	* loader/sparc64/ieee1275/linux.c: Likewise.
32312
	* loader/xnu.c: Likewise.
32313
	* loader/xnu_resume.c: Likewise.
32314
	* mmap/i386/pc/mmap.c: Likewise.
32315
	* normal/menu_viewer.c: Likewise.
32316
	* partmap/acorn.c: Likewise.
32317
	* partmap/amiga.c: Likewise.
32318
	* partmap/apple.c: Likewise.
32319
	* script/lexer.c: Likewise.
32320
	* term/gfxterm.c: Likewise.
32321
	* term/i386/pc/serial.c: Likewise.
32322
	* term/i386/pc/vga.c: Likewise.
32323
	* term/ieee1275/ofconsole.c: Likewise.
32324
	* term/terminfo.c: Likewise.
32325
	* video/bitmap.c: Likewise.
32326
	* video/efi_gop.c: Likewise.
32327
	* video/efi_uga.c: Likewise.
32328
	* video/fb/video_fb.c: Likewise.
32329
	* video/i386/pc/vbe.c: Likewise.
32330
	* video/readers/tga.c: Likewise.
32331
	* video/video.c: Likewise.
32332
32333
2009-12-23  Felix Zielcke <fzielcke@z-51.de>
32334
32335
	* commands/i386/pc/drivemap.c: Remove all trailing whitespace.
32336
	* commands/lspci.c: Likewise.
32337
	* commands/probe.c: Likewise.
32338
	* commands/xnu_uuid.c: Likewise.
32339
	* conf/i386-coreboot.rmk: Likewise.
32340
	* conf/i386-efi.rmk: Likewise.
32341
	* conf/i386-ieee1275.rmk: Likewise.
32342
	* conf/i386-pc.rmk: Likewise.
32343
	* conf/powerpc-ieee1275.rmk: Likewise.
32344
	* conf/sparc64-ieee1275.rmk: Likewise.
32345
	* conf/x86_64-efi.rmk: Likewise.
32346
	* fs/i386/pc/pxe.c: Likewise.
32347
	* gettext/gettext.c: Likewise.
32348
	* include/grub/efi/graphics_output.h: Likewise.
32349
	* include/grub/i386/pc/memory.h: Likewise.
32350
	* kern/env.c: Likewise.
32351
	* kern/i386/qemu/startup.S: Likewise.
32352
	* lib/i386/pc/biosnum.c: Likewise.
32353
	* lib/i386/relocator.c: Likewise.
32354
	* lib/i386/relocator_asm.S: Likewise.
32355
	* lib/relocator.c: Likewise.
32356
	* loader/i386/bsd.c: Likewise.
32357
	* loader/i386/multiboot.c: Likewise.
32358
	* loader/i386/pc/chainloader.c: Likewise.
32359
	* loader/i386/xnu.c: Likewise.
32360
	* loader/xnu.c: Likewise.
32361
	* normal/main.c: Likewise.
32362
	* normal/menu_text.c: Likewise.
32363
	* util/getroot.c: Likewise.
32364
	* util/grub-mkconfig_lib.in: Likewise.
32365
	* util/grub.d/00_header.in: Likewise.
32366
	* util/i386/pc/grub-mkimage.c: Likewise.
32367
	* util/mkisofs/eltorito.c: Likewise.
32368
	* util/mkisofs/exclude.h: Likewise.
32369
	* util/mkisofs/hash.c: Likewise.
32370
	* util/mkisofs/iso9660.h: Likewise.
32371
	* util/mkisofs/joliet.c: Likewise.
32372
	* util/mkisofs/mkisofs.c: Likewise.
32373
	* util/mkisofs/mkisofs.h: Likewise.
32374
	* util/mkisofs/multi.c: Likewise.
32375
	* util/mkisofs/name.c: Likewise.
32376
	* util/mkisofs/rock.c: Likewise.
32377
	* util/mkisofs/tree.c: Likewise.
32378
	* util/mkisofs/write.c: Likewise.
32379
	* video/efi_gop.c: Likewise.
32380
32381
2009-12-23  Vladimir Serbinenko  <phcoder@gmail.com>
32382
32383
	* video/efi_gop.c (grub_video_gop_get_bitmask): Fix off-by-one in mask
32384
	size counting.
32385
32386
2009-12-22  Felix Zielcke <fzielcke@z-51.de>
32387
32388
	* util/grub-mkrescue.in (pkglib_DATA): Set to @pkglib_DATA@.
32389
	* genmk.rb (class SCRIPT): Modify the target file instead of source.
32390
32391
2009-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
32392
32393
	* commands/memrw.c (grub_cmd_write): Support for mask parameter.
32394
	(GRUB_MOD_INIT(memrw)): Update help line.
32395
32396
2009-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
32397
32398
	* commands/memrw.c (cmd_read_byte, cmd_read_word, cmd_read_dword):
32399
	Use grub_extcmd_t. All users updated.
32400
	(options): New variable.
32401
	(grub_cmd_read): Restructure for readability. Support "-v" option.
32402
	(grub_cmd_write): Restructure for readability.
32403
32404
2009-12-22  Felix Zielcke <fzielcke@z-51.de>
32405
1.13.3 by Felix Zielcke
Import upstream version 1.98~20091222
32406
	* genmk.rb (class SCRIPT): Prepend #{src} path with $(srcdir).
32407
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
32408
2009-12-22  Felix Zielcke <fzielcke@z-51.de>
1.13.3 by Felix Zielcke
Import upstream version 1.98~20091222
32409
32410
	* genmk.rb (class SCRIPT): Use sed to substitute @pkglib_DATA@
32411
	with the actual contents of the correspondending make variable.
32412
	* util/grub-mkrescue.in (pkglib_DATA): New variable.
32413
	(process_input_dir): Copy all $pkglib_DATA files instead of explicitly
32414
	specifying `*.lst' and `efiemu??.o'
32415
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
32416
2009-12-22  Felix Zielcke <fzielcke@z-51.de>
1.13.3 by Felix Zielcke
Import upstream version 1.98~20091222
32417
32418
	* util/grub.d/30_os-prober.in (osx_entry): Add round brackets
32419
	after function name.
32420
	Noticed by Rene Engelhard <rene@debian.org>.
32421
32422
2009-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
32423
32424
	* commands/lspci.c (grub_pci_classes): Add "USB Controller".
32425
	(options): New variable.
32426
	(iospace): Likewise.
32427
	(grub_lspci_iter): List IO spaces if "-i" was given.
32428
	(grub_cmd_lspci): Parse options.
32429
	(GRUB_MOD_INIT(lspci)): Use extcmd.
32430
	(GRUB_MOD_FINI(lspci)): Likewise.
32431
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
32432
2009-12-22  Felix Zielcke <fzielcke@z-51.de>
1.13.3 by Felix Zielcke
Import upstream version 1.98~20091222
32433
32434
	* util/grub.d/30_os-prober.in (osx_entry): Remove non POSIX compliant
32435
	`function' keyword.
32436
	Patch by Tony Mancill <tmancill@debian.org>.
32437
32438
2009-12-22  Vladimir Serbinenko  <phcoder@gmail.com>
32439
32440
	* bus/usb/uhci.c (grub_uhci_transfer): Set a limit transaction time.
32441
	(grub_uhci_portstatus): Likewise.
32442
	(grub_uhci_portstatus): Add necessary delay.
32443
	* bus/usb/usbhub.c (grub_usb_hub_add_dev): Fix loop-break condition.
32444
32445
2009-12-21  Carles Pina i Estany  <carles@pina.cat>
32446
32447
	* commands/acpi.c (options): Fix capitalizations and/or full stops.
32448
	(GRUB_MOD_INIT): Likewise.
32449
	* commands/boot.c (GRUB_MOD_INIT): Likewise.
32450
	* commands/cmp.c (grub_cmd_cmp): Improve the help message.
32451
	* commands/echo.c (options): Fix capitalizations and/or full stops.
32452
	* commands/efi/loadbios.c (enable_rom_area): Likewise.
32453
	(enable_rom_area): Likewise.
32454
	(GRUB_MOD_INIT): Likewise.
32455
	* commands/gptsync.c (GRUB_MOD_INIT): Likewise.
32456
	* commands/halt.c (GRUB_MOD_INIT): Improve the help message.
32457
	* commands/handler.c (GRUB_MOD_INIT): Likewise.
32458
	* commands/hdparm.c (options): Fix capitalizations and/or full stops.
32459
	* commands/hexdump.c (options): Likewise.
32460
	* commands/i386/cpuid.c (options): Likewise.
32461
	(GRUB_MOD_INIT): Likewise.
32462
	* commands/i386/pc/drivemap.c (options): Likewise.
32463
	(GRUB_MOD_INIT): Likewise.
32464
	* commands/i386/pc/halt (options): Likewise.
32465
	(GRUB_MOD_INIT): Likewise.
32466
	* commands/i386/pc/play.c (GRUB_MOD_INIT): Likewise.
32467
	* commands/i386/pc/pxecmd.c (options): Likewise.
32468
	* commands/i386/pc/vbetest.c (GRUB_MOD_INIT): Likewise.
32469
	* commands/ieee1275/suspend.c (GRUB_MOD_INIT): Likewise.
32470
	* commands/keystatus.c (options): Likewise.
32471
	(GRUB_MOD_INIT): Likewise.
32472
	* commands/loadenv.c (options): Likewise.
32473
	* commands/ls.c (options): Likewise.
32474
	* commands/lspci.c (GRUB_MOD_INIT): Likewise.
32475
	* commands/memrw.c (GRUB_MOD_INIT): Likewise.
32476
	* commands/minicmd.c (GRUB_MOD_INIT): Likewise.
32477
	* commands/parttool.c (helpmsg): Likewise.
32478
	* commands/probe.c (options): Likewise.
32479
	* commands/read.c (GRUB_MOD_INIT): Likewise.
32480
	* commands/reboot.c (GRUB_MOD_INIT): Likewise.
32481
	* commands/search.c (options): Likewise.
32482
	* commands/sleep.c (options): Likewise.
32483
	* commands/test.c (GRUB_MOD_INIT): Likewise.
32484
	* commands/true.c (GRUB_MOD_INIT): Likewise.
32485
	* commands/usbtest.c (GRUB_MOD_INIT): Likewise.
32486
	* commands/videotest.c (GRUB_MOD_INIT): Likewise.
32487
	* lib/arg.c (help_options): Likewise.
32488
	* Makefile.in ($(srcdir)/po/$(PACKAGE).pot): Pass -ctranslate to
32489
	`$(XGETTEXT)'.
32490
	* po/POTFILES: Add `commands/loadenv.c'.
32491
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
32492
2009-12-21  Felix Zielcke <fzielcke@z-51.de>
1.13.3 by Felix Zielcke
Import upstream version 1.98~20091222
32493
32494
	* util/grub-mkrescue.in (process_input_dir): Copy `*.lst' files
32495
	instead of specifying them explicit.
32496
32497
2009-12-21  Robert Millan  <rmh.grub@aybabtu.com>
32498
32499
	* NEWS: Add grub-probe support for GNU/Hurd.
32500
1.13.2 by Robert Millan
Import upstream version 1.98~20091221
32501
2009-12-21  Robert Millan  <rmh.grub@aybabtu.com>
32502
32503
	* NEWS: gettext was added after 1.97.
32504
32505
2009-12-21  Robert Millan  <rmh.grub@aybabtu.com>
32506
32507
	* util/mkisofs/msdos_partition.h: New file (based on
32508
	include/grub/msdos_partition.h).
32509
	* util/mkisofs/mkisofs.c (use_protective_msdos_label): New variable.
32510
	(OPTION_PROTECTIVE_MSDOS_LABEL): New macro.
32511
	(ld_options, main): Recognize --protective-msdos-label.
32512
	* util/mkisofs/mkisofs.h (use_protective_msdos_label): New declaration.
32513
	* util/mkisofs/write.c: Include `"msdos_partition.h"'.
32514
	(padblock_write): If `use_protective_msdos_label' is set, patch a
32515
	protective DOS-style label in the output image.
32516
32517
	* util/grub-mkrescue.in: Use --protective-msdos-label.
32518
32519
2009-12-21  Robert Millan  <rmh.grub@aybabtu.com>
32520
32521
	* util/grub-mkrescue.in: Do not zero-pad image for BIOS-based disk
32522
	boot.
32523
32524
2009-12-21  Robert Millan  <rmh.grub@aybabtu.com>
32525
32526
	* util/mkisofs/mkisofs.c (use_embedded_boot, boot_image_embed): New
32527
	variables.
32528
	(ld_options, main): Recognize `--embedded-boot'.
32529
	* util/mkisofs/mkisofs.h (use_embedded_boot, boot_image_embed): New
32530
	declarations.
32531
	* util/mkisofs/write.c (PADBLOCK_SIZE): New variable.
32532
	(padblock_size): Use `PADBLOCK_SIZE' instead of hardcoding 16.
32533
	(padblock_write): Likewise.  Rewrite to support embedded boot image.
32534
32535
	* util/grub-mkrescue.in: When building i386-pc images, embed core.img
32536
	for BIOS-based disk boot instead of only ElTorito.
32537
32538
2009-12-21  Robert Millan  <rmh.grub@aybabtu.com>
32539
32540
	* util/grub-mkrescue.in: Remove `configfile' and `sh' from i386-pc
32541
	build (not needed for bootstrap).
32542
32543
2009-12-21  Robert Millan  <rmh.grub@aybabtu.com>
32544
32545
	* util/grub-mkrescue.in: Remove `memdisk', `tar' and `search' modules
32546
	from i386-pc build (not needed for bootstrap).
32547
	Rewrite a pair of strings.
32548
32549
2009-12-21  Robert Millan  <rmh.grub@aybabtu.com>
32550
32551
	* normal/main.c (grub_normal_reader_init): Set left margin back to 3.
32552
32553
2009-12-21  Vladimir Serbinenko  <phcoder@gmail.com>
32554
32555
	* video/i386/pc/vbe.c (grub_video_vbe_fini): Set 'last_set_mode'.
32556
32557
2009-12-21 Andreas Born  <futur.andy@googlemail.com>
32558
32559
	* kern/env.c (grub_env_context_open): Mark exported variable for
32560
	reexport.
32561
32562
2009-12-21 Andreas Born  <futur.andy@googlemail.com>
32563
32564
	* kern/env.c (grub_env_export): Create nonexistent variables before
32565
	exporting.
32566
32567
2009-12-20 Carles Pina i Estany  <carles@pina.cat>
32568
32569
	* include/grub/auth.h: Include `<grub/i18n.h>'.
32570
	(GRUB_GET_PASSWORD): Gettextizze string.
32571
	* include/grub/normal.h (STANDARD_MARGIN): New macro, moved from
32572
	menu_text.c.
32573
	(grub_utf8_to_ucs4_alloc): Fix indentation.
32574
	(grub_print_ucs4): Likewise.
32575
	(grub_getstringwidth): Likewise.
32576
	(print_message_indented): New declaration.
32577
	* normal/auth.c: Include `<grub/i18n.h>'.
32578
	(grub_auth_check_authentication): Gettexttize string.
32579
	* normal/cmdline.c: Include `<grub/i18n.h>'.
32580
	(grub_cmdline_get): Gettextizze.
32581
	* normal/color.c: Include `<grub/i18n.h>'.
32582
	(grub_parse_color_name_pair): Gettexttize strings.
32583
	* normal/main.c (grub_normal_reader_init): Cleanup gettexttized
32584
	string (use `print_message_indented').
32585
	* normal/menu_text.c (STANDARD_MARGIN): Moved from here to
32586
	`include/grub/normal.h'.
32587
	(print_message_indented): Renamed to ...
32588
	(grub_print_message_indented): ... this. Remove `static' qualifer (now
32589
	used in normal/main.c).
32590
	(print_message): Use `grub_print_message_indented' instead of
32591
	`print_message_indented'.
32592
	(print_timeout): Likewise.
32593
	* normal/misc.c: Include `<grub/term.h>' and `<grub/i18n.h>'.
32594
	(grub_normal_print_device_info): Gettexttize strings.
32595
	* po/POTFILES: Add `auth.c', `color.c' and `misc.c'.
32596
32597
2009-12-20  Vladimir Serbinenko  <phcoder@gmail.com>
32598
32599
	* kern/parser.c (grub_parser_split_cmdline): Fix incorrect counting
32600
	of arguments. Return number of tokens and not arguments. All users
32601
	updated.
32602
32603
2009-12-20  Vladimir Serbinenko  <phcoder@gmail.com>
32604
32605
	* util/i386/pc/grub-setup.c (setup): Don't install on non-GPT,
32606
	non-MSDOS paritions.
32607
32608
2009-12-19  Vladimir Serbinenko  <phcoder@gmail.com>
32609
32610
	* include/grub/types.h (UNUSED): Removed since it conflicts with
32611
	NetBSD headers. All users changed to direct __attribute__ ((unused)).
32612
	Reported by Grégoire Sutre.
32613
32614
2009-12-19  Carles Pina i Estany  <carles@pina.cat>
32615
32616
	* include/grub/normal.h (grub_utf8_to_ucs4): New declaration.
32617
	(grub_print_ucs4_alloc): Likewise.
32618
	(grub_getstringwidth): Likewise.
32619
	* normal/main.c (grub_normal_init_page): Gettextize version string.
32620
	* normal/menu_text.c (grub_utf8_to_ucs4_alloc): New definition.
32621
	(getstringwidth): Renamed to ...
32622
	(grub_getstringwidth): ... this. Remove `static' qualifier (now used
32623
	in normal/main.c).  Use `grub_utf8_to_ucs4_alloc'.
32624
	(grub_print_ucs4): Remove `static' qualifer (now used in
32625
	normal/main.c).
32626
	* po/POTFILES: Add normal/main.c.
32627
32628
2009-12-19  Carles Pina i Estany  <carles@pina.cat>
32629
32630
	* normal/menu_text.c (STANDARD_MARGIN): New macro.
32631
	(print_message_indented): Add `margin_left' and `margin_right'
32632
	parameters.
32633
	(print_message): Update `print_message_indented' calls. Adds '\n' to the
32634
	strings.
32635
	(print_timeout): Use `print_message_indented' to print the message.
32636
	Deletes `second_stage' parameter.
32637
	(run_menu): Update `print_timeout' calls.
32638
32639
2009-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
32640
32641
	Fix console palette on OpenFirmware.
32642
32643
	* term/ieee1275/ofconsole.c (MAX): Removed.
32644
	(colors): Redone based on VGA palette.
32645
	(grub_ofconsole_setcolor): Discard brightness bit since only 8
32646
	colors are supported.
32647
	(grub_ofconsole_init_output): Use ARRAY_SIZE instead of hardcoded size.
32648
32649
2009-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
32650
32651
	Fix potential EfiEmu double prepare.
32652
32653
	* efiemu/main.c (prepared): New variable
32654
	(grub_efiemu_unload): Set prepare to '0'.
32655
	(grub_efiemu_prepare): Return if already prepared. Set prepared.
32656
32657
	set_virtual_address_map support.
32658
32659
	* include/grub/efi/efi.h (grub_efi_set_virtual_address_map): New
32660
	prototype.
32661
	* include/grub/efiemu/efiemu.h (grub_efiemu_write_sym_markers): New
32662
	prototype.
32663
	(grub_efiemu_crc32): Likewise.
32664
	(grub_efiemu_crc64): Likewise.
32665
	(grub_efiemu_set_virtual_address_map): Likewise.
32666
	* include/grub/autoefi.h (grub_autoefi_exit_boot_services):
32667
	New definition.
32668
	(grub_autoefi_set_virtual_address_map): Likewise.
32669
	* kern/efi/efi.c (grub_efi_set_virtual_address_map): New function.
32670
	* loader/i386/xnu.c (grub_xnu_boot): Call set_virtual_address_map.
32671
	Restructure flow to accomodate it.
32672
	* efiemu/prepare.c (grub_efiemu_prepare): Support set_virtual_address_map.
32673
	(grub_efiemu_crc): Recompute CRC32.
32674
	* efiemu/runtime/efiemu.c (ptv_relocated): Renamed to ...
32675
	(efiemu_ptv_relocated): ... this. Made global. All users updated.
32676
	* efiemu/symbols.c (relocated_handle): New variable.
32677
	(grub_efiemu_free_syms): Free relocated_handle.
32678
	(grub_efiemu_alloc_syms): Allocate relocated_handle.
32679
	(grub_efiemu_write_sym_markers): New function.
32680
	(grub_efiemu_set_virtual_address_map): Likewise.
32681
32682
	Newer XNU parameters.
32683
32684
	* include/grub/i386/xnu.h (GRUB_XNU_BOOTARGS_VERMINOR): Change to 5.
32685
	* include/grub/xnu.h (grub_xnu_extheader): Add nameaddr and namesize.
32686
	(grub_xnu_fill_devicetree): New prototype.
32687
	(grub_xnu_heap_real_start): New variable.
32688
	* loader/xnu.c (get_name_ptr): New function.
32689
	(grub_xnu_load_driver): Fill namelen and name.
32690
32691
	64-bit xnu support.
32692
32693
	* conf/i386-efi.rmk (xnu_mod_SOURCES): Add 'loader/macho32.c'
32694
	and 'loader/macho64.c'.
32695
	* conf/i386-pc.rmk: Likewise.
32696
	* conf/x86_64-efi.rmk: Likewise.
32697
	* include/grub/i386/macho.h (grub_macho_thread64): New structure.
32698
	* include/grub/xnu.h (grub_xnu_is_64bit): New variable.
32699
	* include/grub/macho.h (grub_macho_segment64): New structure.
32700
	* include/grub/machoload.h (grub_macho32_size): Renamed from ...
32701
	(grub_macho_size32): ... to this.
32702
	(grub_macho32_get_entry_point): Renamed from ...
32703
	(grub_macho_get_entry_point32): ... to this.
32704
	(grub_macho_contains_macho64): New prototype.
32705
	(grub_macho_size64): Likewise.
32706
	(grub_macho_get_entry_point64): Likewise.
32707
	(grub_macho32_load): Renamed from ...
32708
	(grub_macho_load32): ... to this.
32709
	(grub_macho32_filesize): Renamed from ...
32710
	(grub_macho_filesize32): ... to this.
32711
	(grub_macho32_readfile): Renamed from ...
32712
	(grub_macho_readfile32): ... to this.
32713
	(grub_macho_filesize64): New prototype.
32714
	(grub_macho_readfile64): Likewise.
32715
	(grub_macho_parse32): Likewise.
32716
	(grub_macho_parse64): Likewise.
32717
	* loader/macho.c: Split into ...
32718
	* loader/machoXX.c: ... and this. Replace 32 with XX.
32719
	* loader/macho32.c: New file.
32720
	* loader/macho64.c: Likewise.
32721
	* loader/xnu.c (grub_xnu_is_64bit): New variable.
32722
	(grub_cmd_xnu_kernel): Make 32-bit only.
32723
	(grub_cmd_xnu_kernel64): New function.
32724
	(grub_xnu_load_driver): Support Mach-O 64.
32725
	(grub_cmd_xnu_mkext): Likewise.
32726
	* util/grub.d/30_os-prober.in (osx_entry): New function.
32727
	Generate entries for 64-bit boot too.
32728
32729
	Eliminate ad-hoc tree format in XNU and EfiEmu.
32730
32731
	* efiemu/main.c (grub_efiemu_prepare): Update comment.
32732
	* efiemu/pnvram.c: Rewritten to use environment variables.
32733
	All users updated.
32734
32735
	Inline utf16_to_utf8.
32736
32737
	* kern/misc.c (grub_utf16_to_utf8): Move from here ...
32738
	* include/grub/charset.h (grub_utf16_to_utf8): ... to here. Inlined.
32739
	All users updated.
32740
	* include/grub/misc.h (grub_utf16_to_utf8): Removed.
32741
32742
	* bus/usb/usb.c (grub_usb_get_string): Move from here ...
32743
	* commands/usbtest.c (grub_usb_get_string): ... move here.
32744
	(usb_print_str): Fix error handling.
32745
	* include/grub/usb.h (grub_usb_get_string): Remove.
32746
32747
	UTF-8 to UTF-16 transformation.
32748
32749
	* conf/common.rmk (pkglib_MODULES): Add charset.mod
32750
	(charset_mod_SOURCES): New variable.
32751
	(charset_mod_CFLAGS): Likewise.
32752
	(charset_mod_LDFLAGS): Likewise.
32753
	* include/grub/utf.h: New file.
32754
	* lib/utf.c: New file. (Based on grub_utf8_to_ucs4 from kern/misc.c)
32755
32756
	Support for device properties.
32757
32758
	* include/grub/i386/xnu.h (grub_xnu_devprop_header): New structure.
32759
	(grub_xnu_devprop_device_header): Likewise.
32760
	(grub_xnu_devprop_device_descriptor): Likewise.
32761
	(grub_xnu_devprop_add_device): New prototype.
32762
	(grub_xnu_devprop_remove_device): Likewise.
32763
	(grub_xnu_devprop_remove_property): Likewise.
32764
	(grub_xnu_devprop_add_property_utf8): Likewise.
32765
	(grub_xnu_devprop_add_property_utf16): Likewise.
32766
	(grub_cpu_xnu_init): Likewise.
32767
	(grub_cpu_xnu_fini): Likewise.
32768
	(grub_cpu_xnu_unload): Likewise.
32769
	* loader/i386/xnu.c (grub_xnu_devprop_device_descriptor): New structure.
32770
	(property_descriptor): Likewise.
32771
	(devices): New variable.
32772
	(grub_xnu_devprop_remove_property): New function.
32773
	(grub_xnu_devprop_add_device): Likewise.
32774
	(grub_xnu_devprop_remove_device): Likewise.
32775
	(grub_xnu_devprop_add_property): Likewise.
32776
	(grub_xnu_devprop_add_property_utf8): Likewise.
32777
	(grub_xnu_devprop_add_property_utf16): Likewise.
32778
	(hextoval): Likewise.
32779
	(grub_cpu_xnu_fill_devprop): Likewise.
32780
	(grub_cmd_devprop_load): Likewise.
32781
	(grub_xnu_boot): Call grub_cpu_xnu_fill_devprop,
32782
	grub_xnu_fill_devicetree, grub_xnu_fill_devicetree
32783
	(cmd_devprop_load): New variable.
32784
	(grub_cpu_xnu_init): New function.
32785
	(grub_cpu_xnu_fini): Likewise.
32786
	* loader/i386/xnu.c (grub_xnu_unload): Call grub_cpu_xnu_unload.
32787
	* loader/xnu.c (grub_xnu_parse_devtree): Remove.
32788
	(grub_cmd_xnu_devtree): Likewise.
32789
	(hextoval): New function.
32790
	(unescape): Likewise.
32791
	(grub_xnu_fill_devicetree): Likewise.
32792
32793
	* util/grub.d/30_os-prober.in: Load devprop.bin. Don't load devtree.txt.
32794
	* util/i386/efi/grub-dumpdevtree: Generate devprop.bin.
32795
32796
2009-12-18  Vladimir Serbinenko  <phcoder@gmail.com>
32797
32798
	Workaround for broken ATI VBE.
32799
32800
	* video/i386/pc/vbe.c (last_set_mode): New variable.
32801
	(grub_vbe_set_video_mode): Set 'last_set_mode'.
32802
	(grub_vbe_get_video_mode): Use 'last_set_mode' if get_mode fails.
32803
	(grub_video_vbe_setup): Don't check for reserved flag.
32804
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
32805
2009-12-17  Felix Zielcke <fzielcke@z-51.de>
1.13.2 by Robert Millan
Import upstream version 1.98~20091221
32806
32807
	* gendistlist.sh: Use POSIX compliant `!' instead of `-not' in
32808
	the `find' command.
32809
1.26.1 by Felix Zielcke
Import upstream version 1.98~experimental.20091216
32810
2009-12-16  Vladimir Serbinenko  <phcoder@gmail.com>
32811
32812
	UUID support for HFS.
32813
32814
	* fs/hfs.c (grub_hfs_uuid): New function.
32815
	(grub_hfs_fs): New value .uuid.
32816
	* include/grub/hfs.h (grub_hfs_sblock): New field 'num_serial'.
32817
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
32818
2009-12-14  Felix Zielcke <fzielcke@z-51.de>
1.26.1 by Felix Zielcke
Import upstream version 1.98~experimental.20091216
32819
32820
	Fix a segfault with parsing unknown long options.
32821
32822
	* util/grub-mkrelpath.c (options): Zero terminate it.
32823
32824
2009-12-13  Carles Pina i Estany  <carles@pina.cat>
32825
32826
	* include/grub/misc.h (grub_puts): New declaration.
32827
	(grub_puts_): Likewise.
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
32828
	* kern/misc.c (grub_puts): New definition.
1.26.1 by Felix Zielcke
Import upstream version 1.98~experimental.20091216
32829
	(grub_puts_): Likewise.
32830
32831
2009-12-13  Robert Millan  <rmh.grub@aybabtu.com>
32832
32833
	* util/grub-probe.c (probe): Improve error message.
32834
32835
2009-12-13  Robert Millan  <rmh.grub@aybabtu.com>
32836
32837
	* loader/i386/multiboot_elfxx.c
32838
	(CONCAT(grub_multiboot_load_elf, XX)): Fix `grub_multiboot_payload_eip'
32839
	initialization.
32840
32841
2009-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
32842
32843
	Relocator framework
32844
32845
	* loader/i386/xnu_helper.S: Removed. All users updated.
32846
	* conf/i386.rmk (pkglib_MODULES): Add relocator.mod.
32847
	(relocator_mod_SOURCES): New variable.
32848
	(relocator_mod_CFLAGS): Likewise.
32849
	(relocator_mod_LDFLAGS): Likewise.
32850
	(relocator_mod_ASFLAGS): Likewise.
32851
	* conf/x86_64.rmk: Likewise.
32852
	* include/grub/i386/multiboot.h (grub_multiboot_payload_orig): Removed.
32853
	(grub_multiboot_payload_entry_offset): Likewise.
32854
	(grub_multiboot_forward_relocator): Likewise.
32855
	(grub_multiboot_forward_relocator_end): Likewise.
32856
	(grub_multiboot_backward_relocator): Likewise.
32857
	(grub_multiboot_backward_relocator_end): Likewise.
32858
	(grub_multiboot_payload_eip): New variable.
32859
	(grub_multiboot_payload_orig): Likewise.
32860
	* include/grub/i386/pc/memory.h: Include grub/i386/memory.h.
32861
	(GRUB_MEMORY_MACHINE_CR0_PE_ON): Move from here ...
32862
	* include/grub/i386/memory.h
32863
	(GRUB_MEMORY_CPU_CR0_PE_ON): ... to here
32864
	(GRUB_MEMORY_CPU_CR4_PAE_ON): New definition.
32865
	(GRUB_MEMORY_CPU_CR0_PAGING_ON): Likewise.
32866
	(GRUB_MEMORY_CPU_AMD64_MSR): Likewise.
32867
	(GRUB_MEMORY_CPU_AMD64_MSR_ON): Likewise.
32868
	* include/grub/i386/relocator.h: New file.
32869
	* include/grub/x86_64/relocator.h: Likewise.
32870
	* include/grub/i386/xnu.h: Include grub/cpu/relocator.h.
32871
	(XNU_RELOCATOR): New macro.
32872
	(grub_xnu_launcher_start): Remove.
32873
	(grub_xnu_launcher_end): Likewise.
32874
	* include/grub/xnu.h (grub_xnu_boot_resume): New prototype.
32875
	(grub_xnu_heap_real_start): Remove.
32876
	(grub_xnu_heap_start): Change to void *. All users updated.
32877
	* kern/i386/realmode.S (real_to_prot): Use GRUB_MEMORY_CPU_CR0_PE_ON.
32878
	* lib/i386/relocator.c: New file.
32879
	* lib/i386/relocator_asm.S: Likewise.
32880
	* lib/i386/relocator_backward.S: Likewise.
32881
	* lib/mips/relocator.c: Likewise.
32882
	* lib/mips/relocator_asm.S: Likewise.
32883
	* lib/relocator.c: Likewise.
32884
	* loader/i386/multiboot.c: Include grub/i386/relocator.h.
32885
	(entry): Removed.
32886
	(playground): Likewise.
32887
	(grub_multiboot_payload_orig): New variable.
32888
	(grub_multiboot_payload_dest): Likewise.
32889
	(grub_multiboot_payload_size): Likewise.
32890
	(grub_multiboot_payload_eip): Likewise.
32891
	(grub_multiboot_payload_esp): Likewise.
32892
	(grub_multiboot_boot): Use grub_relocator32_boot.
32893
	(grub_multiboot_unload): Free relocators.
32894
	(grub_multiboot): Setup stack. Use relocators.
32895
	* loader/i386/multiboot_elfxx.c: Include grub/i386/relocator.h.
32896
	(grub_multiboot_load_elfXX): Use relocators.
32897
	* loader/i386/multiboot_helper.S (grub_multiboot_payload_orig): Removed.
32898
	(grub_multiboot_payload_size): Likewise.
32899
	(grub_multiboot_payload_dest): Likewise.
32900
	(grub_multiboot_payload_entry_offset): Likewise.
32901
	(grub_multiboot_forward_relocator): Likewise.
32902
	(grub_multiboot_backward_relocator): Likewise.
32903
	(grub_multiboot_real_boot): Likewise.
32904
	* loader/i386/xnu.c (grub_xnu_heap_will_be_at): New variable.
32905
	(grub_xnu_entry_point): Likewise.
32906
	(grub_xnu_arg1): Likewise.
32907
	(grub_xnu_stack): Likewise.
32908
	(grub_xnu_launch): Removed.
32909
	(grub_xnu_boot_resume): New function.
32910
	(grub_xnu_boot): Use relocators.
32911
	* loader/i386/xnu_helper.S: Removed.
32912
	* loader/xnu.c (grub_xnu_heap_start): New variable.
32913
	(grub_xnu_heap_size): Likewise.
32914
	(grub_xnu_heap_malloc): Use relocators.
32915
	* loader/xnu_resume.c (grub_xnu_resume): Use relocators.
32916
32917
2009-12-13  Vladimir Serbinenko  <phcoder@gmail.com>
32918
32919
	* kern/i386/pc/startup.S (multiboot_entry): Setup stack before calling
32920
	anything.
32921
32922
2009-12-13  Carles Pina i Estany  <carles@pina.cat>
32923
32924
	* script/execute.c (grub_script_execute_cmdline): Set grub_errno to
32925
	GRUB_ERR_NONE before calling grub_env_set.
32926
32927
2009-12-12  Robert Millan  <rmh@aybabtu.com>
32928
32929
	* gendistlist.sh (EXTRA_DISTFILES): Add `genvideolist.sh'.
32930
	* genmk.rb (video): New variable.
32931
	(CLEANFILES, VIDEOFILES): Add #{video}.
32932
	(#{video}): New target rule.
32933
	* genvideolist.sh: New file.
32934
	* Makefile.in (pkglib_DATA): Add video.lst.
32935
	(video.lst): New target rule.
32936
	* util/grub-mkconfig.in: Initialize ${GRUB_VIDEO_BACKEND} using
32937
	`video.lst'.
32938
	* util/grub.d/30_os-prober.in: Replace `vbe' with
32939
	${GRUB_VIDEO_BACKEND}.
32940
32941
2009-12-11  Robert Millan  <rmh.grub@aybabtu.com>
32942
32943
	* THANKS: Add David Miller.
32944
32945
2009-12-11  Vladimir Serbinenko  <phcoder@gmail.com>
32946
32947
	libpciaccess support.
32948
32949
	* Makefile.in (LIBPCIACCESS): New variable.
32950
	(enable_grub_emu_pci): Likewise.
32951
	* conf/any-emu.rmk (grub_emu_SOURCES) [enable_grub_emu_pci]: Add
32952
	util/pci.c and commands/lspci.c.
32953
	(grub_emu_LDFLAGS) [enable_grub_emu_pci]: Add $(LIBPCIACCESS).
32954
	* configure.ac (grub-emu-pci): New option.
32955
	* include/grub/i386/pci.h (grub_pci_device_map_range): New function.
32956
	(grub_pci_device_unmap_range): Likewise.
32957
	* include/grub/pci.h [GRUB_UTIL]: Include grub/pciutils.h.
32958
	(grub_pci_device) [!GRUB_UTIL]: New structure. All users updated.
32959
	(grub_pci_address_t) [!GRUB_UTIL]: New type.
32960
	(grub_pci_device_t) [!GRUB_UTIL]: Likewise.
32961
	(grub_pci_get_bus) [!GRUB_UTIL]: New function.
32962
	(grub_pci_get_device) [!GRUB_UTIL]: Likewise.
32963
	(grub_pci_get_function) [!GRUB_UTIL]: Likewise.
32964
	* include/grub/pciutils.h: New file.
32965
	* util/pci.c: Likewise.
32966
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
32967
2009-12-11  Felix Zielcke <fzielcke@z-51.de>
1.26.1 by Felix Zielcke
Import upstream version 1.98~experimental.20091216
32968
32969
	* util/misc.c: Don't include <errno.h> twice.
32970
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
32971
2009-12-10  Felix Zielcke <fzielcke@z-51.de>
1.26.1 by Felix Zielcke
Import upstream version 1.98~experimental.20091216
32972
32973
	* disk/i386/pc/biosdisk.c (grub_biosdisk_open): Show the disk
32974
	name in an error message.
32975
	(grub_biosdisk_rw): Likewise.
32976
32977
2009-12-10  Vladimir Serbinenko  <phcoder@gmail.com>
32978
32979
	Eliminate NTFS 4Gib barrier.
32980
32981
	* fs/ntfs.c (read_attr): Use grub_disk_addr_t and grub_size_t.
32982
	(read_run_data): Likewise.
32983
	(grub_ntfs_read_run_list): Likewise.
32984
	(grub_ntfs_read_block): Likewise.
32985
	(grub_ntfs_iterate_dir): Likewise.
32986
	(read_mft): Likewise.
32987
	(read_data): Likewise.
32988
	Use COM_LOG_LEN.
32989
	* fs/ntfscomp.c (read_block): Cast ctx->target_vcn & 0xF to unsigned
32990
	to avoid 64-bit division
32991
	* include/grub/ntfs.h (COM_LOG_LEN): New definition.
32992
	(grub_ntfs_rlst): Use grub_disk_addr_t.
32993
32994
2009-12-10  Vladimir Serbinenko  <phcoder@gmail.com>
32995
32996
	Eliminate grub-fstest 4Gib barrier.
32997
32998
	* util/grub-fstest.c (skip, leng): Use grub_disk_addr_t.
32999
	(read_file): Fix error reporting.
33000
33001
2009-12-10  Vladimir Serbinenko  <phcoder@gmail.com>
33002
33003
	Eliminate hexdump 4Gib barrier.
33004
33005
	* commands/hexdump.c (grub_cmd_hexdump): Use grub_disk_addr_t.
33006
	* lib/arg.c (grub_arg_parse): Use grub_strtoull.
33007
33008
2009-12-10  Vladimir Serbinenko  <phcoder@gmail.com>
33009
33010
	* kern/device.c (grub_device_iterate): Ignore errors during first scan.
33011
	Fixes amarsh bug.
33012
1.13.1 by Robert Millan
Import upstream version 1.97+20091210
33013
2009-12-09  Bruce Dubbs  <bruce.dubbs@gmail.com>
33014
33015
	Remove miscellaneous files in distclean target.
33016
33017
	* Makefile.in: Remove docs/{grub.info,version.texi,stamp-vti}
33018
33019
2009-12-09  Colin Watson  <cjwatson@ubuntu.com>
33020
33021
	* util/grub-mkconfig_lib.in: Don't set grub_probe or grub_mkrelpath
33022
	if they're already set.  This resolves the conflict between my
33023
	grub-install change on 2009-10-06 and Felix' change on 2009-11-11,
33024
	fixing the --grub-probe option again.
33025
	* util/sparc64/ieee1275/grub-install.in: Revert the last piece of my
33026
	change on 2009-10-06, so that we now once again source
33027
	`${libdir}/grub/grub-mkconfig_lib' after options have been parsed.
33028
33029
2009-12-08  Robert Millan  <rmh.grub@aybabtu.com>
33030
33031
	* conf/common.rmk [sparc64-ieee1275] (grub_mkdevicemap_SOURCES): Use
33032
	`util/ieee1275/ofpath.c' and `util/ieee1275/devicemap.c' instead of
33033
	`util/devicemap.c'.
33034
33035
2009-12-08  Carles Pina i Estany  <carles@pina.cat>
33036
33037
	* include/grub/misc.h (grub_printf_): New declaration.
33038
	* kern/misc.c (grub_printf_): New definition.
33039
	* normal/main.c (grub_normal_reader_init): Use `grub_printf_' and `N_'
33040
	instead of `grub_printf' and `_'.
33041
	* normal/menu_entry.c (store_completion): Likewise.
33042
	(run): Likewise.
33043
	(grub_menu_entry_run): Likewise.
33044
	* normal/menu_text.c (grub_wait_after_message): Likewise.
33045
	(notify_booting): Likewise.
33046
	(notify_fallback): Likewise.
33047
	(notify_execution_failure): Likewise.
33048
33049
2009-12-07  Colin Watson  <cjwatson@ubuntu.com>
33050
33051
	* configure.ac: Check for vasprintf.
33052
	* util/misc.c (asprintf): Move allocation from here ...
33053
	(vasprintf): ... to here.  New function.
33054
	(xasprintf): New function.
33055
	* include/grub/util/misc.h (vasprintf, xasprintf): Add
33056
	prototypes.
33057
	* util/getroot.c (grub_util_get_grub_dev): Use xasprintf.
33058
	* util/grub-mkfont.c (write_font): Likewise.
33059
	* util/grub-probe.c (probe): Likewise.
33060
	* util/hostdisk.c (make_device_name): Likewise.
33061
33062
2009-12-06  David S. Miller  <davem@sunset.davemloft.net>
33063
33064
	* disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Recognize
33065
	anything even prefixed with 'cdrom' as a cdrom.
33066
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
33067
2009-12-06  Felix Zielcke <fzielcke@z-51.de>
1.13.1 by Robert Millan
Import upstream version 1.97+20091210
33068
33069
	* util/misc.c (make_system_path_relative_to_its_root): Correctly cope with
33070
	mount points.
33071
33072
2009-12-05  Carles Pina i Estany <carles@pina.cat>
33073
33074
	* gettext/gettext.c: Include `<grub/list.h>'. Define grub_gettext_msg,
33075
	grub_gettext_msg_list.
33076
	(grub_gettext_gettranslation_from_position): Return const char *
33077
	and not char *.
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
33078
	(grub_gettext_translate): Add the translated strings into a list,
1.13.1 by Robert Millan
Import upstream version 1.97+20091210
33079
	returns from the list if existing there.
33080
	(grub_gettext_init_ext): Add \n at the end of grub_dprintf string.
33081
	(grub_gettext_delete_list): Delete the list.
33082
	(grub_gettext_env_write_lang): Call grub_gettext_delete_list when
33083
	lang environment variable is changed.
33084
	(GRUB_MOD_FINI): Call grub_gettext_delete_list.
33085
33086
2009-12-05  Vladimir Serbinenko  <phcoder@gmail.com>
33087
33088
	Rename kernel.mod to kernel.img.
33089
33090
	* conf/i386-efi.rmk (pkglib_MODULES): Change kernel.mod to kernel.img.
33091
	(kernel_mod_EXPORTS): Rename to ...
33092
	(kernel_img_EXPORTS): ... this.
33093
	(kernel_mod_SOURCES): Rename to ...
33094
	(kernel_img_SOURCES): ... this.
33095
	(kernel_mod_HEADERS): Rename to ...
33096
	(kernel_img_HEADERS): ... this. All users updated.
33097
	(kernel_mod_CFLAGS): Rename to ...
33098
	(kernel_img_CFLAGS): ... this.
33099
	(kernel_mod_ASFLAGS): Rename to ...
33100
	(kernel_img_ASFLAGS): ... this.
33101
	(kernel_mod_LDFLAGS): Rename to ...
33102
	(kernel_img_LDFLAGS): ... this.
33103
	* conf/x86_64-efi.rmk: Likewise.
33104
	* util/i386/efi/grub-mkimage.c (read_kernel_module): Rename to ...
33105
	(read_kernel_image): ... this. All users updated.
33106
	(read_kernel_image): Read "kernel.img" instead of "kernel.mod".
33107
33108
2009-12-05  Carles Pina i Estany  <carles@pina.cat>
33109
33110
	* normal/menu_text.c (grub_color_menu_high): Gettexttize string.
33111
	(print_spaces): New function.
33112
	(grub_print_ucs4): New function.
33113
	(getstringwidth): New function.
33114
	(print_message_indented): New function.
33115
	(print_message): Gettexttize strings using print_message_indented.
33116
	(run_menu): Replaces grub_printf by print_spaces and dynamic terminal
33117
	width.
33118
	(get_entry_number): Gettextize and uses dynamic terminal width.
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
33119
	(notify_booting, notify_fallback, notify_execution_failure):
1.13.1 by Robert Millan
Import upstream version 1.97+20091210
33120
	Gettextize.
33121
	* normal/menu_entry.c (store_completion): Cleanup the gettextized
33122
	string.
33123
	(run): Likewise.
33124
	(grub_menu_entry_run): Likewise.
33125
	* PO/POTFILES: Add normal/menu_entry.c.
33126
33127
2009-12-05  Vladimir Serbinenko  <phcoder@gmail.com>
33128
33129
	* configure.ac (TARGET_ASFLAGS): Add "-D<MACHINE>".
33130
33131
2009-12-05  Carles Pina i Estany  <carles@pina.cat>
33132
33133
	* util/grub-install.in: Install gettext .mo files.
33134
	* util/grub-mkrescue.in (process_input_dir): Copy gettext .mo files.
33135
33136
2009-12-05  Carles Pina i Estany  <carles@pina.cat>
33137
33138
	* gettext/gettext.c (grub_gettext_init_ext): Replace grub_printf with
33139
	grub_dprintf.
33140
33141
2009-12-05  Robert Millan  <rmh.grub@aybabtu.com>
33142
33143
	* kern/ieee1275/openfw.c (grub_reboot): Disable for i386.  The
33144
	non-firmware-dependant one in realmode.S takes precedence.
33145
33146
2009-12-04  Robert Millan  <rmh.grub@aybabtu.com>
33147
33148
	* commands/halt.c: Replace misc arch-specific headers with
33149
	`<grub/misc.h>'.
33150
	* commands/reboot.c: Likewise.
33151
	* commands/i386/pc/halt.c: Replace `<grub/machine/init.h>' with
33152
	`<grub/misc.h>'.
33153
	* conf/i386-coreboot.rmk (kernel_img_HEADERS): Remove `cpu/reboot.h'.
33154
	(halt_mod_SOURCES): Move `kern/i386/halt.c' from here ...
33155
	(kernel_img_SOURCES): ... to here.
33156
33157
	* include/grub/efi/efi.h (grub_reboot, grub_halt): Remove prototypes.
33158
	* include/grub/i386/pc/init.h: Likewise.
33159
	* include/grub/powerpc/ieee1275/kernel.h: Likewise.
33160
	* include/grub/sparc64/ieee1275/kernel.h: Likewise.
33161
33162
	* include/grub/misc.h (grub_reboot, grub_halt): New prototypes.
33163
33164
	* include/grub/i386/halt.h: Remove.
33165
	* include/grub/i386/reboot.h: Likewise.
33166
33167
	* kern/i386/halt.c: Remove `<grub/cpu/halt.h>'.
33168
33169
2009-12-03  David S. Miller  <davem@sunset.davemloft.net>
33170
33171
	* conf/sparc64-ieee1275.rmk (grub_mkimage_SOURCES,
33172
	grub_setup_SOURCES, grub_ofpathname_SOURCES): Add gnulib/progname.c
33173
	* util/sparc64/ieee1275/grub-mkimage.c: Include <grub/i18n.h> and
33174
	"progname.h"
33175
	* util/sparc64/ieee1275/grub-ofpathname.c: Likewise.
33176
	* util/sparc64/ieee1275/grub-setup.c: Likewise.
33177
	(usage): Add missing comma in printf.
33178
33179
2009-12-02  Robert Millan  <rmh.grub@aybabtu.com>
33180
33181
	Use the same reboot approach on i386 coreboot and qemu as we do on
33182
	BIOS.
33183
33184
	* conf/i386-coreboot.rmk (kernel_img_HEADERS): Add `cpu/reboot.h'.
33185
	(reboot_mod_SOURCES): Remove `kern/i386/reboot.c'.
33186
	* kern/i386/reboot.c: Remove.
33187
	* include/grub/i386/reboot.h (grub_reboot): Export function.
33188
	* kern/i386/pc/startup.S (grub_reboot): Move from here ...
33189
	* kern/i386/realmode.S (grub_reboot): ... to here.  Jump to
33190
	0xf000:0xfff0 instead of 0xffff:0x0000.
33191
	[!GRUB_MACHINE_PCBIOS] (prot_to_real): Do not restore interrupts.
33192
	* kern/i386/qemu/startup.S: Include `"../realmode.S"'.
33193
1.10.3 by Robert Millan
Import upstream version 1.97+20091130
33194
2009-11-30  Robert Millan  <rmh.grub@aybabtu.com>
33195
33196
	Fix $srcdir != $objdir build.
33197
33198
	* Makefile.in (po/%.po):  Rewrite as ...
33199
	($(foreach lang, $(LINGUAS), $(srcdir)/po/$(lang).po)): ... this.
33200
33201
2009-11-29  Samuel Thibault  <samuel.thibault@ens-lyon.org>
33202
33203
	Fix GNU/Hurd grub-install crash.
33204
	* util/grub-probe.c (probe): Try to access `path' only when it is not
33205
	NULL.
33206
33207
2009-11-28  Vladimir Serbinenko  <phcoder@gmail.com>
33208
33209
	Correct module naming.
33210
33211
	* video/efi_uga.c (GRUB_MOD_INIT(efi_fb)): Renamed from this ...
33212
	(GRUB_MOD_INIT(efi_uga)): ... to this
33213
	(GRUB_MOD_FINI(efi_fb)): Renamed from this ...
33214
	(GRUB_MOD_FINI(efi_uga)): ... to this
33215
	* video/efi_gop.c (GRUB_MOD_INIT(efi_fb)): Renamed from this ...
33216
	(GRUB_MOD_INIT(efi_gop)): ... to this
33217
	(GRUB_MOD_FINI(efi_fb)): Renamed from this ...
33218
	(GRUB_MOD_FINI(efi_gop)): ... to this
33219
33220
2009-11-28  Robert Millan  <rmh.grub@aybabtu.com>
33221
33222
	* util/mkisofs/mkisofs.c (ld_options): Mark all `arg' strings as
33223
	translatable.
33224
	(usage): Translate `arg' strings using gettext().
33225
	Thanks to Jordi Mallach for the suggestion.
33226
33227
2009-11-28  Vladimir Serbinenko  <phcoder@gmail.com>
33228
33229
	GOP support. Based on patch from Bean
33230
	(http://lists.gnu.org/archive/html/grub-devel/2009-08/msg00384.html)
33231
33232
	* video/efi_gop.c: New file.
33233
	* include/grub/efi/graphics_output.h: Likewise.
33234
	* conf/i386-efi.rmk (pkglib_MODULES): Add `efi_gop.mod'.
33235
	(efi_fb_mod_SOURCES, efi_fb_mod_CFLAGS, efi_fb_mod_LDFLAGS): New
33236
	variables.
33237
	* conf/x86_64-efi.rmk: Likewise.
33238
33239
2009-11-28  Vladimir Serbinenko  <phcoder@gmail.com>
33240
33241
	Rename efi_fb to efi_uga.
33242
33243
	* conf/i386-efi.rmk (pkglib_MODULES): Rename 'efi_fb.mod' to
33244
	'efi_uga.mod'.
33245
	(efi_fb_mod_SOURCES): Rename this ...
33246
	(efi_uga_mod_SOURCES): ... to this.
33247
	(efi_fb_mod_CFLAGS): Rename this ...
33248
	(efi_uga_mod_CFLAGS): ... to this.
33249
	(efi_fb_mod_LDFLAGS): Rename this ...
33250
	(efi_uga_mod_LDFLAGS): ... to this.
33251
	* conf/x86_64-efi.rmk (pkglib_MODULES): Rename 'efi_fb.mod' to
33252
	'efi_uga.mod'.
33253
	(efi_fb_mod_SOURCES): Rename this ...
33254
	(efi_uga_mod_SOURCES): ... to this.
33255
	(efi_fb_mod_CFLAGS): Rename this ...
33256
	(efi_uga_mod_CFLAGS): ... to this.
33257
	(efi_fb_mod_LDFLAGS): Rename this ...
33258
	(efi_uga_mod_LDFLAGS): ... to this.
33259
	* video/efi_fb.c: Move this ...
33260
	* video/efi_uga.c: ... to this. Change prefix to 'grub_video_uga_'.
33261
33262
2009-11-27  Robert Millan  <rmh.grub@aybabtu.com>
33263
33264
	* po/README: New file.  Explain our PO file workflow.
33265
33266
2009-11-27  Robert Millan  <rmh.grub@aybabtu.com>
33267
33268
	* po/ChangeLog: Remove.  Move relevant entries back to ...
33269
	* ChangeLog: ... here.
33270
	* po/ca.po: Remove (now handled by TLP).
33271
	* po/id.po: Likewise.
33272
	* po/zh_CN.po: Likewise.
33273
	* Makefile.in (LINGUAS): Initialize in a way that supports
33274
	empty set.
33275
33276
2009-11-27  Robert Millan  <rmh.grub@aybabtu.com>
33277
33278
	* Makefile.in (LINGUAS): Rewrite by scanning po/ directory instead of
33279
	reliing on po/LINGUAS.
33280
	($(foreach lang, $(LINGUAS), $(srcdir)/po/$(lang).po)): Rewrite as ...
33281
	(po/%.po): ... this.
33282
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
33283
2009-11-26  Felix Zielcke <fzielcke@z-51.de>
1.10.3 by Robert Millan
Import upstream version 1.97+20091130
33284
33285
	* util/i386/efi/grub-mkimage.c: Include "progname.h".
33286
	(main): Use `program_name' instead of nonexistent `progname'.
33287
33288
2009-11-26  Felix Zielcke  <fzielcke@z-51.de>
33289
33290
	* conf/i386-efi.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'.
33291
	* conf/x86_64-efi.rmk (grub_mkimage_SOURCES): Likewise.
33292
33293
2009-11-26  Robert Millan  <rmh.grub@aybabtu.com>
33294
33295
	* conf/i386-coreboot.rmk: Cleanup stale filenames from my previous
33296
	commit.
33297
	* conf/i386-efi.rmk: Likewise.
33298
	* conf/i386-ieee1275.rmk: Likewise.
33299
	* conf/powerpc-ieee1275.rmk: Likewise.
33300
	* conf/sparc64-ieee1275.rmk: Likewise.
33301
	* conf/x86_64-efi.rmk: Likewise.
33302
33303
2009-11-26  Felix Zielcke  <fzielcke@z-51.de>
33304
33305
	* conf/any-emu.rmk (grub_emu_SOURCES): Add `gnulib/progname.c'.
33306
33307
2009-11-26  Felix Zielcke  <fzielcke@z-51.de>
33308
33309
	* conf/any-emu.rmk (grub_mkfont_SOURCES): Add `gnulib/progname.c'.
33310
33311
2009-11-26  Robert Millan  <rmh.grub@aybabtu.com>
33312
33313
	* conf/common.rmk (sbin_UTILITIES): Add `grub-mkdevicemap'.
33314
	(grub_mkdevicemap_SOURCES): New variable.
33315
	(grub_probe_SOURCES, grub_fstest_SOURCES, grub_mkfont_SOURCES)
33316
	(grub_mkrelpath_SOURCES, grub_editenv_SOURCES)
33317
	(grub_pe2elf_SOURCES): Add `gnulib/progname.c'.
33318
	* conf/i386-coreboot.rmk (sbin_UTILITIES): Remove `grub-mkdevicemap'.
33319
	(grub_mkdevicemap_SOURCES): Remove.
33320
	* conf/i386-efi.rmk: Likewise.
33321
	* conf/i386-ieee1275.rmk: Likewise.
33322
	* conf/i386-pc.rmk: Likewise.
33323
	* conf/powerpc-ieee1275.rmk: Likewise.
33324
	* conf/sparc64-ieee1275.rmk: Likewise.
33325
	* conf/x86_64-efi.rmk: Likewise.
33326
	* util/elf/grub-mkimage.c: Include `<grub/i18n.h>' and `"progname.h"'.
33327
	(usage): Fix strings to use `program_name'.
33328
	(main): Initialize gettext.
33329
	* util/grub-editenv.c: Likewise.
33330
	* util/grub-emu.c: Likewise.
33331
	* util/grub-fstest.c: Likewise.
33332
	* util/grub-mkdevicemap.c: Likewise.
33333
	* util/grub-mkfont.c: Likewise.
33334
	* util/grub-mkrelpath.c: Likewise.
33335
	* util/grub-pe2elf.c: Likewise.
33336
	* util/grub-probe.c: Likewise.
33337
	* util/sparc64/ieee1275/grub-mkimage.c: Likewise.
33338
	* util/sparc64/ieee1275/grub-ofpathname.c: Likewise.
33339
	* util/sparc64/ieee1275/grub-setup.c: Likewise.
33340
33341
	* util/misc.c: Include `"progname.h"'.
33342
	(progname): Remove variable.
33343
	(grub_util_warn, grub_util_info, grub_util_error): Use `program_name'.
33344
1.10.2 by Felix Zielcke
Import upstream version 1.97+20091125
33345
2009-11-25  Felix Zielcke  <fzielcke@z-51.de>
33346
33347
	* util/grub.d/10_linux.in (linux_entry): Quote the arguments to
33348
	printf and print a newline after the menuentry header line.
33349
	* util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise.
33350
33351
2009-11-25  Felix Zielcke  <fzielcke@z-51.de>
33352
33353
	autoconf >= 2.60 support $(localedir).
33354
33355
	* INSTALL: Note that autoconf 2.60 is required.
33356
	* configure.ac (AC_PREREQ): Bump to 2.60.
33357
	* util/grub.d/10_kfreebsd.in (TEXTDOMAINDIR): Set to lowercased @localedir@.
33358
	* util/grub.d/10_linux.in (TEXTDOMAINDIR): Likewise.
33359
33360
2009-11-25  Yves Blusseau  <yves.blusseau@zetam.org>
33361
33362
	* configure.ac: move the call to AM_GNU_GETTEXT to avoid warnings when
33363
	aclocal is run.
33364
33365
2009-11-25  Robert Millan  <rmh.grub@aybabtu.com>
33366
33367
	* normal/main.c (grub_normal_read_line): Fix off-by-one
33368
	buffer overflow.
33369
33370
2009-11-25  Robert Millan  <rmh.grub@aybabtu.com>
33371
33372
	* normal/main.c (grub_normal_execute): Replace "parser.sh" with
33373
	"parser.grub" in grub_command_execute() call.
33374
33375
2009-11-24  Carles Pina i Estany <carles@pina.cat>
33376
33377
	* conf/i386-coreboot.rmk (kernel_img_HEADERS): Add i18n.h.
33378
	* conf/i386-efi.rmk: Likewise.
33379
	* conf/i386-ieee1275.rmk: Likewise.
33380
	* conf/i386-pc.rmk: Likewise.
33381
	* conf/powerpc-ieee1275.rmk: Likewise.
33382
	* conf/sparc64-ieee1275.rmk: Likewise.
33383
	* conf/x86_64-efi.rmk: Likewise.
33384
	* gettext/gettex.c: Include <grub/i18n.h>.
33385
	* include/grub/misc.h (grub_gettext_dummy, grub_gettext): Move from
33386
 	  here ...
33387
	* include/grub/i18n.h: ... to here
33388
	* include/grub/i18n.h: ... to here.
33389
	* kern/misc.c: Include <grub/i18n.h>
1.13.4 by Felix Zielcke
Import upstream version 1.98~20091229
33390
	(grub_gettext_dummy): Move above user.
1.10.2 by Felix Zielcke
Import upstream version 1.97+20091125
33391
33392
2009-11-24  Felix Zielcke  <fzielcke@z-51.de>
33393
33394
	* util/Makefile.in (install-local): Convert a `for' into a normal
33395
	shell expansion.
33396
33397
2009-11-24  Robert Millan  <rmh.grub@aybabtu.com>
33398
33399
	* autogen.sh: Add automake call.
33400
	* config.guess: Remove.
33401
	* config.sub: Likewise.
33402
	* install-sh: Likewise.
33403
33404
2009-11-24  Felix Zielcke  <fzielcke@z-51.de>
33405
33406
	* util/Makefile.in (install-local): Fix the use of $lang shell variable.
33407
33408
2009-11-24  Felix Zielcke  <fzielcke@z-51.de>
33409
33410
	* util/Makefile.in (install-local): Convert a make `$(foreach)'
33411
	function to a normal shell `for'.
33412
33413
2009-11-24  Felix Zielcke  <fzielcke@z-51.de>
33414
33415
	* conf/i386-coreboot.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'.
33416
33417
2009-11-24  Felix Zielcke  <fzielcke@z-51.de>
33418
33419
	* util/grub-mkrelpath.c: New file.
33420
	* conf/common.rmk (bin_UTILITIES): Add grub-mkrelpath.
33421
	(grub_mkrelpath_SOURCES): New variable.
33422
	* include/grub/util/misc.h: New function prototype.
33423
	* util/misc.c (make_system_path_relative_to_its_root): New function.
33424
33425
	* util/grub-mkconfig_lib.in (bindir): New variable.
33426
	(grub_mkrelpath): Likewise.
33427
	(make_system_path_relative_to_its_root): Use grub-mkrelpath.
33428
33429
	* util/probe.c (probe): Make the file path relative to its root.
33430
	Change a info message to use the GRUB path.  Enable again the
33431
	check if we can read the file with GRUB facilities.
33432
33433
	* util/i386/pc/grub-setup.c (setup): Make core.img path relative
33434
	to its root.
33435
33436
2009-11-24  Felix Zielcke  <fzielcke@z-51.de>
33437
33438
	* Makefile.in: Don't include GRUB_CONTRIB makefiles with emu
33439
	platform.
33440
33441
2009-11-24  Felix Zielcke  <fzielcke@z-51.de>
33442
33443
	* util/getroot.c (grub_util_get_dev_abstraction): Properly use
33444
	strncmp().
33445
33446
2009-11-24  Felix Zielcke  <fzielcke@z-51.de>
33447
33448
	* util/getroot.c (grub_util_is_dmraid): New function.
33449
	(grub_util_get_dev_abstraction): Treat dmraid and multipath
33450
	devices as normal ones, not as LVM.
33451
33452
2009-11-23  Carles Pina i Estany <carles@pina.cat>
33453
33454
	* conf/common.rmk: Add grub-gettext_lib target and updates
33455
	  lib_DATA and CLEANFILES. Adds gettext.mod SOURCES, CFLAGS,
33456
	  LDFLAGS.
33457
	* gettext/gettext.c: New file. (Reads mo files).
33458
	* include/grub/file.h (grub_file_pread): New prototype.
33459
	* include/grub/i18n.h (_): New prototype.
33460
	* include/grub/misc.h (grub_gettext_dummy, grub_gettext): New
33461
	  prototypes.
33462
	* kern/misc.c (grub_gettext_dummy): New function.
33463
	* normal/menu_text.c: Include <grub/i18n.h>.
33464
	* normal/menu_text.c (print_timeout): Gettexttize string.
33465
	* normal/menu_text.c (print_message): Gettexttize string.
1.10.3 by Robert Millan
Import upstream version 1.97+20091130
33466
	* po/POTFILES: Add `normal/menu_text.c'.
33467
	* po/ca.po: Add new translations.
1.10.2 by Felix Zielcke
Import upstream version 1.97+20091125
33468
	* util/grub.d/00_header.in: Define locale_dir and lang. insmod
33469
	  gettext module and defines locale_dir and lang in grub.cfg.
33470
	* NEWS: Add gettext support.
33471
33472
2009-11-23  Robert Millan  <rmh.grub@aybabtu.com>
33473
33474
	* util/hostdisk.c: Include `<grub/i18n.h>'.
33475
	(find_grub_drive): Use ARRAY_SIZE for map size calculation.
33476
	(make_device_name): Rewrite using asprintf.
33477
	(convert_system_partition_to_system_disk): Replace 0 with NULL.
33478
	(find_system_device): If a device is not found, generate one just
33479
	by reusing the OS path name.
33480
	(read_device_map): Make it permissible for device.map not to exist.
33481
33482
2009-11-23  Robert Millan  <rmh.grub@aybabtu.com>
33483
33484
	* script/sh/execute.c: Move from here ...
33485
	* script/execute.c: ... to here.  Update all users.
33486
	* script/sh/function.c: Move from here ...
33487
	* script/function.c: ... to here.  Update all users.
33488
	* script/sh/lexer.c: Move from here ...
33489
	* script/lexer.c: ... to here.  Update all users.
33490
	* script/sh/main.c: Move from here ...
33491
	* script/main.c: ... to here.  Update all users.
33492
	* script/sh/parser.y: Move from here ...
33493
	* script/parser.y: ... to here.  Update all users.
33494
	* script/sh/script.c: Move from here ...
33495
	* script/script.c: ... to here.  Update all users.
33496
33497
2009-11-23  Robert Millan  <rmh.grub@aybabtu.com>
33498
33499
	* configure.ac: Detect all `emu' platforms.  Define
33500
	GRUB_MACHINE_* macros in TARGET_CFLAGS.  Remove
33501
	--enable-grub-emu logic.  Disable include/grub/machine
33502
	symlink on `emu' platforms.
33503
33504
	* genkernsyms.sh.in: Use @TARGET_CFLAGS@ during symbol generation.
33505
	* gensymlist.sh.in: Likewise.
33506
33507
	* include/grub/i386/coreboot/machine.h: Remove file.
33508
	* include/grub/i386/efi/machine.h: Likewise.
33509
	* include/grub/i386/ieee1275/machine.h: Likewise.
33510
	* include/grub/i386/pc/machine.h: Likewise.
33511
	* include/grub/i386/qemu/machine.h: Likewise.
33512
	* include/grub/powerpc/ieee1275/machine.h: Likewise.
33513
	* include/grub/sparc64/ieee1275/machine.h: Likewise.
33514
	* include/grub/x86_64/efi/machine.h: Likewise.
33515
33516
	* commands/acpi.c: Remove `<grub/machine/machine.h>'.
33517
	* commands/halt.c: Likewise.
33518
	* commands/reboot.c: Likewise.
33519
	* include/grub/autoefi.h: Likewise.
33520
	* include/grub/i386/at_keyboard.h: Likewise.
33521
	* include/grub/i386/kernel.h: Likewise.
33522
	* include/grub/i386/loader.h: Likewise.
33523
	* include/grub/i386/pc/memory.h: Likewise.
33524
        * kern/dl.c: Likewise.
33525
	* kern/i386/coreboot/init.c: Likewise.
33526
	* loader/i386/bsd.c: Likewise.
33527
	* loader/i386/linux.c: Likewise.
33528
	* loader/multiboot_loader.c: Likewise.
33529
	* term/i386/pc/serial.c: Likewise.
33530
	* term/usb_keyboard.c: Likewise.
33531
33532
	* include/grub/time.h [!GRUB_MACHINE_EMU]: Remove
33533
	`<grub/machine/machine.h>'
33534
	[!GRUB_MACHINE_EMU] (GRUB_TICKS_PER_SECOND): New macro.
33535
	* util/misc.c: Remove `<grub/machine/machine.h>' and
33536
	`<grub/machine/time.h>'.
33537
33538
	* Makefile.in (enable_grub_emu): Remove variable.
33539
	Include $(srcdir)/conf/any-emu.mk for the `emu' platform.
33540
33541
	* conf/any-emu.rmk: New file.
33542
	* conf/common.rmk (grub_emu_init.lst, grub_emu_init.h)
33543
	(grub_emu_init.c): Move from here ...
33544
	* conf/any-emu.rmk: ... to here.
33545
33546
	* conf/i386-coreboot.rmk (sbin_UTILITIES): Remove `grub-emu'.
33547
	(grub_emu_SOURCES, grub_emu_LDFLAGS): Move from here ...
33548
	* conf/any-emu.rmk: ... to here.
33549
33550
2009-11-23  Robert Millan  <rmh.grub@aybabtu.com>
33551
33552
	* include/grub/parser.h (grub_parser_register): Document need
33553
	of `name' parameter.
33554
	* normal/main.c (grub_normal_read_line): Simplify prompt string.
33555
	* script/sh/main.c (grub_sh_parser, GRUB_MOD_INIT(sh)): Rename
33556
	"sh" to "grub".
33557
33558
2009-11-23  Robert Millan  <rmh.grub@aybabtu.com>
33559
33560
	* Makefile.in ($(srcdir)/po/$(PACKAGE).pot): Pass --keyword=N_ to
33561
	`$(XGETTEXT)'.
33562
	* include/grub/i18n.h (N_): New macro.
33563
	* util/mkisofs/mkisofs.h: Likewise.
33564
	* util/mkisofs/mkisofs.c (ld_options): Wrap all translatable strings
33565
	around N_().
33566
	(usage): Use gettext() to translate help strings when printing them.
33567
33568
2009-11-23  Robert Millan  <rmh.grub@aybabtu.com>
33569
33570
	Based on patch from Bean
33571
	(http://lists.gnu.org/archive/html/grub-devel/2009-08/msg00384.html)
33572
33573
	* video/efi_fb.c: New file.
33574
	* conf/i386-efi.rmk (pkglib_MODULES): Add `efi_fb.mod'.
33575
	(efi_fb_mod_SOURCES, efi_fb_mod_CFLAGS, efi_fb_mod_LDFLAGS): New
33576
	variables.
33577
	* conf/x86_64-efi.rmk: Likewise.
33578
33579
2009-11-22  Robert Millan  <rmh.grub@aybabtu.com>
33580
33581
	* util/i386/pc/grub-mkimage.c: Ungettextize grub_util_info() strings.
33582
	* util/i386/pc/grub-setup.c: Likewise.
33583
33584
2009-11-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
33585
33586
	* util/getroot.c [__GNU__]: Include <hurd.h>, <hurd/lookup.h>, and
33587
	<hurd/fs.h>
33588
	[__GNU__] (grub_guess_root_device): Call file_name_lookup and
33589
	file_get_storage_info to implement grub_guess_root_device.
33590
33591
2009-11-21  Felix Zielcke  <fzielcke@z-51.de>
33592
33593
	* Makefile.in (target): Use make's builtin $(shell) function
33594
	instead of calling directly $(SHELL) to create the locale directories,
33595
	inside the $(foreach) function.
33596
33597
2009-11-21  Felix Zielcke  <fzielcke@z-51.de>
33598
33599
	* util/grub-mkrescue.in: Print an error and usage if output option
33600
	has not been given.
33601
33602
2009-11-21  Felix Zielcke  <fzielcke@z-51.de>
33603
33604
	Patch from Loïc Minier <loic.minier@ubuntu.com>.
33605
	* util/grub.d/30_os-prober.in: Cope with Linux entries where
33606
	root and /boot are on different devices.
33607
33608
2009-11-21  Robert Millan  <rmh.grub@aybabtu.com>
33609
33610
	Fix build for srcdir != objdir.
33611
33612
	* Makefile.in (po/$(PACKAGE).pot): Rename to ...
33613
	($(srcdir)/po/$(PACKAGE).pot): ... this.  Run $(XGETTEXT) from
33614
	$(srcdir).
33615
	($(foreach lang, $(LINGUAS), po/$(lang).po)): Rename to ...
33616
	($(foreach lang, $(LINGUAS), $(srcdir)/po/$(lang).po): ... this. Use $^
33617
	reference for input.
33618
33619
2009-11-21  Robert Millan  <rmh.grub@aybabtu.com>
33620
33621
	* util/grub-mkrescue.in: Use source directory direcly (without copiing
33622
	or hardlinking it).  Remove -J option, Joliet is not compatible with
33623
	multiple source directories.
33624
33625
2009-11-21  Carles Pina i Estany <carles@pina.cat>
33626
2009-11-21  Robert Millan  <rmh.grub@aybabtu.com>
33627
33628
	* util/grub-mkrescue.in: Recognize `--override-directory' option.
33629
	(process_input_dir): New function.  Process an arbitrary input
33630
	directory.
33631
	Misc adjustments to support both "override mode" and system-wide mode.
33632
33633
2009-11-20  Felix Zielcke  <fzielcke@z-51.de>
33634
33635
	* configure.ac (UNIFONT_BDF): Rename to ...
33636
	(FONT_SOURCE): ... this.  Update all users.
33637
33638
2009-11-20  Felix Zielcke  <fzielcke@z-51.de>
33639
33640
	* configure.ac: Add `/usr/share/fonts/X11/misc/unifont.pcf.gz'
33641
	to the list of unifont files to look for.
33642
33643
2009-11-19  Robert Millan  <rmh.grub@aybabtu.com>
33644
33645
	Patch from Joe Auricchio <jauricchio@gmail.com>
33646
	* commands/minicmd.c (grub_mini_cmd_clear): New function.
33647
	(GRUB_MOD_INIT(minicmd)): Register grub_mini_cmd_clear().
33648
	(GRUB_MOD_FINI(minicmd)): Unregister grub_mini_cmd_clear().
33649
33650
2009-11-19  Felix Zielcke  <fzielcke@z-51.de>
33651
33652
	* Makefile.in (install-local): Add a missing backslash.
33653
33654
2009-11-19  Felix Zielcke  <fzielcke@z-51.de>
33655
33656
	* include/grub/x86_64/io.h: New file.
33657
33658
2009-11-19  Robert Millan  <rmh.grub@aybabtu.com>
33659
33660
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add `gnulib/progname.c'.
33661
	* util/i386/pc/grub-setup.c: Include `<grub/i18n.h>'.
33662
	Include `"progname.h"'.
33663
	(main): Initialize gettext.
33664
	* util/i386/pc/grub-setup.c: Gettexttize.
33665
	* util/i386/pc/grub-mkimage.c: Likewise.
33666
33667
	* Makefile.in (po/*.po): Redefine as ...
33668
	($(foreach lang, $(LINGUAS), po/$(lang).po)): ... this.
33669
1.10.3 by Robert Millan
Import upstream version 1.97+20091130
33670
	* po/POTFILES: Add `util/i386/pc/grub-setup.c'.
33671
1.10.2 by Felix Zielcke
Import upstream version 1.97+20091125
33672
2009-11-19  Robert Millan  <rmh.grub@aybabtu.com>
33673
33674
	* conf/common.rmk (grub_mkisofs_SOURCES): Add `gnulib/progname.c'.
33675
	* util/mkisofs/mkisofs.c: Include `"progname.h"'.
33676
	(program_name): Remove.
33677
	(main): Initialize gettext support.
33678
	* util/mkisofs/mkisofs.h: Include `<locale.h>'.
33679
	Include `<libintl.h>'.
33680
	(_): New macro.
33681
33682
	* util/mkisofs/eltorito.c: Gettexttize.
33683
	* util/mkisofs/joliet.c: Likewise.
33684
	* util/mkisofs/mkisofs.c: Likewise.
33685
	* util/mkisofs/multi.c: Likewise.
33686
	* util/mkisofs/rock.c: Likewise.
33687
	* util/mkisofs/tree.c: Likewise.
33688
	* util/mkisofs/write.c: Likewise.
33689
1.10.3 by Robert Millan
Import upstream version 1.97+20091130
33690
	* po/POTFILES: Update with new files.
33691
1.10.2 by Felix Zielcke
Import upstream version 1.97+20091125
33692
2009-11-18  Robert Millan  <rmh.grub@aybabtu.com>
33693
33694
	* util/mkisofs/eltorito.c: Fix minor mistake in license text.
33695
	* util/mkisofs/iso9660.h: Likewise.
33696
	* util/mkisofs/joliet.c: Likewise.
33697
	* util/mkisofs/mkisofs.c: Likewise.
33698
	* util/mkisofs/mkisofs.h: Likewise.
33699
	* util/mkisofs/rock.c: Likewise.
33700
	* util/mkisofs/tree.c: Likewise.
33701
	* util/mkisofs/write.c: Likewise.
33702
33703
	* util/mkisofs/eltorito.c (rcsid): Remove.
33704
	* util/mkisofs/hash.c: Likewise.
33705
	* util/mkisofs/joliet.c: Likewise.
33706
	* util/mkisofs/name.c: Likewise.
33707
	* util/mkisofs/rock.c: Likewise.
33708
	* util/mkisofs/tree.c: Likewise.
33709
	* util/mkisofs/write.c: Likewise.
33710
33711
2009-11-18  Robert Millan  <rmh.grub@aybabtu.com>
33712
33713
	* util/mkisofs/match.c: Rewrite from scratch, using a linked list
33714
	instead of static allocation.
33715
	* util/mkisofs/match.h: Likewise.
33716
33717
2009-11-18  Robert Millan  <rmh.grub@aybabtu.com>
33718
1.10.3 by Robert Millan
Import upstream version 1.97+20091130
33719
	* po/POTFILES-shell: New file.  List `util/grub.d/10_kfreebsd.in'
33720
	and `util/grub.d/10_linux.in'.
1.10.2 by Felix Zielcke
Import upstream version 1.97+20091125
33721
	* Makefile.in (po/$(PACKAGE).pot): Process `po/POTFILES-shell' for
33722
	translatable Shell files.
33723
33724
2009-11-18  Robert Millan  <rmh.grub@aybabtu.com>
33725
33726
	* Makefile.in ($(srcdir)/aclocal.m4): New target.
33727
33728
2009-11-17  Robert Millan  <rmh.grub@aybabtu.com>
33729
33730
	* INSTALL: Document Automake is needed for bootstrap.
1.10.3 by Robert Millan
Import upstream version 1.97+20091130
33731
	* po/ca.po: Fix PO-Revision-Date and Language-Team fields.
1.10.2 by Felix Zielcke
Import upstream version 1.97+20091125
33732
	* util/grub.d/10_kfreebsd.in (bindir): New variable.
33733
	Add gettext initialization.
33734
	(kfreebsd_entry): Make menuentry output translatable.
33735
33736
2009-11-17  Robert Millan  <rmh.grub@aybabtu.com>
33737
33738
	* Makefile.in (XGETTEXT, MSGMERGE, MSGFMT): New variables.
33739
	(po/$(PACKAGE).pot): Replace `xgettext' with `$(XGETTEXT)'.
33740
	(po/*.po): Replace `msgmerge' with `$(MSGMERGE)'.
33741
	(po/%.mo): Replace `msgfmt' with `$(MSGFMT)'.
33742
	(LINGUAS): Auto-generate using `po/LINGUAS'.
1.10.3 by Robert Millan
Import upstream version 1.97+20091130
33743
	* po/LINGUAS: New file.
1.10.2 by Felix Zielcke
Import upstream version 1.97+20091125
33744
33745
2009-11-17  Robert Millan  <rmh.grub@aybabtu.com>
33746
33747
	* configure.ac: Call AM_GNU_GETTEXT() (defines localedir, among
33748
	other things).
33749
	* Makefile.in (CPPFLAGS): Add `-DLOCALEDIR=\"$(localedir)\"'.
33750
	* util/i386/pc/grub-mkimage.c (main): Issue setlocale() and
33751
	bindtextdomain() calls for gettext initialization.
33752
33753
2009-11-17  Robert Millan  <rmh.grub@aybabtu.com>
33754
33755
	* gnulib/progname.c: New file (imported from Gnulib).
33756
	* gnulib/progname.h: Likewise.
33757
	* conf/i386-pc.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'.
33758
	* util/i386/pc/grub-mkimage.c: Include `"progname.h"'.
33759
	(usage): Replace `progname' with `program_name'.
33760
	(main): Use set_program_name() for program name initialization.
33761
33762
2009-11-17  Robert Millan  <rmh.grub@aybabtu.com>
33763
33764
	* conf/common.rmk (grub_mkisofs_CFLAGS): Move `-I$(srcdir)/gnulib'
33765
	from here ...
33766
	* Makefile.in (CPPFLAGS): ... to here.
33767
33768
2009-11-16  Robert Millan  <rmh.grub@aybabtu.com>
33769
33770
	* aclocal.m4: Move from here ...
33771
	* acinclude.m4: ... to here.
33772
	* autogen.sh: Add call to `aclocal'.
33773
	* configure.ac: Add AM_INIT_AUTOMAKE() after AC_INIT() call.
33774
33775
2009-11-16  Robert Millan  <rmh.grub@aybabtu.com>
33776
33777
	* Makefile.in (CLEANFILES): Add `po/*.mo'.
33778
	(LINGUAS): New variable.
33779
	(all-local): Add `$(foreach lang, $(LINGUAS), po/$(lang).mo)'.
33780
	(install-local): Install MO files.
33781
	(po/$(PACKAGE).pot, po/*.po, po/%.mo): New rules.
33782
	* include/grub/i18n.h: New file.
1.10.3 by Robert Millan
Import upstream version 1.97+20091130
33783
	* po/POTFILES: New file.
33784
	* po/ca.po: New file.
1.10.2 by Felix Zielcke
Import upstream version 1.97+20091125
33785
	* util/grub.d/10_linux.in (bindir): New variable.
33786
	Add gettext initialization.
33787
	(linux_entry): Make menuentry output translatable.
33788
	* util/i386/pc/grub-mkimage.c: Include `<grub/i18n.h>'.
33789
	(usage): Make --help output translatable.
33790
	(main): Initialize gettext.
33791
33792
2009-11-17  Robert Millan  <rmh.grub@aybabtu.com>
33793
33794
	* import_gcry.py: New file (written by Vladimir with minor
33795
	adjustments).
33796
	* autogen.sh: Use import_gcry.py to auto-generate GRUB-ified
33797
	ciphers.
33798
	* INSTALL: Document that Python is required for bootstrap.
33799
33800
2009-11-17  Robert Millan  <rmh.grub@aybabtu.com>
33801
33802
	Import ciphers from libgcrypt 1.4.4.
33803
33804
	 * lib/libgcrypt/cipher/ChangeLog
33805
	 * lib/libgcrypt/cipher/ac.c
33806
	 * lib/libgcrypt/cipher/arcfour.c
33807
	 * lib/libgcrypt/cipher/bithelp.h
33808
	 * lib/libgcrypt/cipher/blowfish.c
33809
	 * lib/libgcrypt/cipher/camellia-glue.c
33810
	 * lib/libgcrypt/cipher/camellia.c
33811
	 * lib/libgcrypt/cipher/camellia.h
33812
	 * lib/libgcrypt/cipher/cast5.c
33813
	 * lib/libgcrypt/cipher/cipher.c
33814
	 * lib/libgcrypt/cipher/crc.c
33815
	 * lib/libgcrypt/cipher/des.c
33816
	 * lib/libgcrypt/cipher/dsa.c
33817
	 * lib/libgcrypt/cipher/ecc.c
33818
	 * lib/libgcrypt/cipher/elgamal.c
33819
	 * lib/libgcrypt/cipher/hash-common.c
33820
	 * lib/libgcrypt/cipher/hash-common.h
33821
	 * lib/libgcrypt/cipher/hmac-tests.c
33822
	 * lib/libgcrypt/cipher/md.c
33823
	 * lib/libgcrypt/cipher/md4.c
33824
	 * lib/libgcrypt/cipher/md5.c
33825
	 * lib/libgcrypt/cipher/primegen.c
33826
	 * lib/libgcrypt/cipher/pubkey.c
33827
	 * lib/libgcrypt/cipher/rfc2268.c
33828
	 * lib/libgcrypt/cipher/rijndael-tables.h
33829
	 * lib/libgcrypt/cipher/rijndael.c
33830
	 * lib/libgcrypt/cipher/rmd.h
33831
	 * lib/libgcrypt/cipher/rmd160.c
33832
	 * lib/libgcrypt/cipher/rsa.c
33833
	 * lib/libgcrypt/cipher/seed.c
33834
	 * lib/libgcrypt/cipher/serpent.c
33835
	 * lib/libgcrypt/cipher/sha1.c
33836
	 * lib/libgcrypt/cipher/sha256.c
33837
	 * lib/libgcrypt/cipher/sha512.c
33838
	 * lib/libgcrypt/cipher/tiger.c
33839
	 * lib/libgcrypt/cipher/twofish.c
33840
	 * lib/libgcrypt/cipher/whirlpool.c
33841
33842
2009-11-16  Robert Millan  <rmh.grub@aybabtu.com>
33843
33844
	Fix build for systems without error().
33845
33846
	* gnulib/error.c: New file (imported from Gnulib).
33847
	* gnulib/error.h: Likewise.
33848
	* conf/common.rmk (grub_mkisofs_SOURCES): Add `gnulib/error.c'.
33849
	* util/mkisofs/mkisofs.c (program_name): Remove `static' qualifier
33850
	(this variable is now used by error()).
33851
33852
2009-11-16  Felix Zielcke  <fzielcke@z-51.de>
33853
33854
	* util/mkisofs/name.c (iso9660_file_length): Use isascii macro
33855
	instead of relying that char is signed.
33856
33857
2009-11-16  Vladimir Serbinenko  <phcoder@gmail.com>
33858
33859
	* fs/i386/pc/pxe.c (grub_pxefs_open): Correctly handle PXE choosing
33860
	blocksize different from specified.
33861
	(grub_pxefs_read): Likewise.
33862
33863
2009-11-16  Felix Zielcke  <fzielcke@z-51.de>
33864
33865
	Enable ata.mod on x86_64-efi, i386-efi and i386-ieee1275.
33866
33867
	* disk/ata.c (grub_ata_dumpinfo): Add a cast.
33868
	(grub_ata_readwrite): Likewise.  Update 2 format strings.
33869
	(grub_atapi_read): Likewise.
33870
33871
	* conf/i386-coreboot.rmk (pkglib_MODULES): Move `ata.mod' from here ...
33872
	* conf/i386.rmk (pkglib_MODULES): ... to here ...
33873
	* conf/x86_64-efi.rmk (pkglib_MODULES): ... and here.
33874
	* conf/i386-coreboot.rmk (ata_mod_SOURCES, ata_mod_CFLAGS)
33875
	(ata_mod_LDFLAGS): Move from here ...
33876
	* conf/i386.rmk: ... to here ...
33877
	* conf/x86_64-efi.rmk: ... and here.
33878
	* conf/i386-pc.rmk (pkglib_MODULES): Remove `ata.mod'
33879
	(ata_mod_SOURCES, ata_mod_CFLAGS, ata_mod_LDFLAGS): Remove.
33880
33881
2009-11-16  Robert Millan  <rmh.grub@aybabtu.com>
33882
33883
	Relicense multiboot.h, with RMS' blessing.
33884
33885
	* include/multiboot.h: Change to X11 license.
33886
1.10.1 by Felix Zielcke
Import upstream version 1.97+20091115
33887
2009-11-15  Robert Millan  <rmh.grub@aybabtu.com>
33888
33889
	Support --version in grub-mkisofs.
33890
33891
	* util/mkisofs/mkisofs.c (rcsid): Remove variable.
33892
	(OPTION_VERSION): New macro.
33893
	(ld_options): Recognize --version.
33894
	(usage): Move `program_name' from here ...
33895
	(program_name): ... to here.  Add `static' qualifier.
33896
	(main): Recognize `OPTION_VERSION'.
33897
33898
2009-11-15  Felix Zielcke  <fzielcke@z-51.de>
33899
33900
	* Makefile.in (TARGET_CPPFLAGS): Replace `-isystem=$(srcdir)/include'
33901
	with `-nostdinc -isystem $(shell $(TARGET_CC) -print-file-name=include)'.
33902
33903
2009-11-14  Robert Millan  <rmh.grub@aybabtu.com>
33904
33905
	Fix help2man generation for mkisofs.
33906
33907
	* util/mkisofs/mkisofs.c (ld_options): Recognize --help.
33908
	(usage): Send output to stdout (rather than stderr).
33909
33910
2009-11-14  Robert Millan  <rmh.grub@aybabtu.com>
33911
33912
	* conf/i386-coreboot.rmk (grub_mkrescue_SOURCES): Replace
33913
	`util/i386/coreboot/grub-mkrescue.in' with `util/grub-mkrescue.in'.
33914
	* conf/i386-pc.rmk (grub_mkrescue_SOURCES): Replace
33915
	`util/i386/pc/grub-mkrescue.in' with `util/grub-mkrescue.in'.
33916
	(bin_SCRIPTS): Add `grub-mkfloppy'.
33917
	(grub_mkfloppy_SOURCES): New variable.
33918
33919
	* util/grub-mkrescue.in: New file.
33920
	* util/i386/pc/grub-mkfloppy.in: New file.
33921
33922
	* util/i386/coreboot/grub-mkrescue.in: Remove.
33923
	* util/i386/pc/grub-mkrescue.in: Remove.
33924
33925
2009-11-13  Robert Millan  <rmh.grub@aybabtu.com>
33926
33927
	* include/grub/multiboot.h (struct grub_multiboot_header): Move
33928
	from here ...
33929
	* include/multiboot.h (struct multiboot_header): ... to here.  Update
33930
	all users.
33931
	* include/grub/multiboot.h (struct grub_multiboot_info): Move
33932
	from here ...
33933
	* include/multiboot.h (struct multiboot_info): ... to here.  Update
33934
	all users.
33935
	* include/grub/multiboot.h (struct grub_multiboot_mmap_entry): Move
33936
	from here ...
33937
	* include/multiboot.h (struct multiboot_mmap_entry): ... to here.
33938
	Update all users.
33939
	* include/grub/multiboot.h (struct grub_mod_list): Move
33940
	from here ...
33941
	* include/multiboot.h (struct multiboot_mod_list): ... to here.
33942
	Update all users.
33943
33944
2009-11-13  Robert Millan  <rmh.grub@aybabtu.com>
33945
33946
	* include/multiboot2.h (multiboot_word): Rename from this ...
33947
	(multiboot2_word): ... to this.  Update all users.
33948
	(multiboot_header): Rename from this ...
33949
	(multiboot2_header): ... to this.  Update all users.
33950
	(multiboot_tag_header): Rename from this ...
33951
	(multiboot2_tag_header): ... to this.  Update all users.
33952
	(multiboot_tag_start): Rename from this ...
33953
	(multiboot2_tag_start): ... to this.  Update all users.
33954
	(multiboot_tag_name): Rename from this ...
33955
	(multiboot2_tag_name): ... to this.  Update all users.
33956
	(multiboot_tag_module): Rename from this ...
33957
	(multiboot2_tag_module): ... to this.  Update all users.
33958
	(multiboot_tag_memory): Rename from this ...
33959
	(multiboot2_tag_memory): ... to this.  Update all users.
33960
	(multiboot_tag_unused): Rename from this ...
33961
	(multiboot2_tag_unused): ... to this.  Update all users.
33962
	(multiboot_tag_end): Rename from this ...
33963
	(multiboot2_tag_end): ... to this.  Update all users.
33964
33965
2009-11-13  Robert Millan  <rmh.grub@aybabtu.com>
33966
33967
	Disable Multiboot2 in i386-ieee1275.  It didn't actually work, and on
33968
	this platform we should support Multiboot1 first.
33969
33970
	* conf/i386-ieee1275.rmk (pkglib_MODULES): Remove `multiboot.mod'.
33971
	(multiboot_mod_SOURCES, multiboot_mod_CFLAGS)
33972
	(multiboot_mod_LDFLAGS, multiboot_mod_ASFLAGS): Remove.
33973
33974
2009-11-12  Robert Millan  <rmh.grub@aybabtu.com>
33975
33976
	* util/mkisofs/eltorito.c (init_boot_catalog): Handle return code
33977
	of write calls (converting them to fwrite() if they aren't already).
33978
	(get_torito_desc): Likewise.
33979
	* util/mkisofs/rock.c (generate_rock_ridge_attributes): Likewise.
33980
33981
2009-11-12  Robert Millan  <rmh.grub@aybabtu.com>
33982
33983
	* util/i386/pc/grub-install.in: Move from here ...
33984
	* util/grub-install.in: ... to here.  Update all users.
33985
33986
2009-11-11  Colin Watson  <cjwatson@ubuntu.com>
33987
33988
	* util/powerpc/ieee1275/grub-mkrescue.in: Fix --version output.
33989
33990
2009-11-11  Robert Millan  <rmh.grub@aybabtu.com>
33991
33992
	Support for El Torito without floppy emulation.
33993
33994
	* util/mkisofs/eltorito.c: Include `<errno.h>'.
33995
	(init_boot_catalog): Improve error handling.
33996
	(get_torito_desc): Don't use floppy emulation unless requested by
33997
	user. Patch boot information table when requested via
33998
	`-boot-info-table'.
33999
	* util/mkisofs/iso9660.h (struct eltorito_boot_info): New struct.
34000
	* util/mkisofs/mkisofs.c (use_eltorito_emul_floppy)
34001
	(use_boot_info_table): New variables.
34002
	(OPTION_BOOT_INFO_TABLE, OPTION_NO_EMUL_BOOT)
34003
	(OPTION_ELTORITO_EMUL_FLOPPY): New macros.
34004
	(ld_options): Handle `-boot-info-table', `-no-emul-boot' and
34005
	`--eltorito-emul-floppy'.
34006
	(main): Handle `OPTION_BOOT_INFO_TABLE', `OPTION_NO_EMUL_BOOT'
34007
	and `OPTION_ELTORITO_EMUL_FLOPPY'.
34008
	* util/mkisofs/mkisofs.h (use_eltorito_emul_floppy)
34009
	(use_boot_info_table, get_731): New prototypes.
34010
	* util/mkisofs/write.c (get_731): New function.
34011
34012
2009-11-11  Felix Zielcke  <fzielcke@z-51.de>
34013
34014
	Fix the generation of the man page.
34015
34016
	* util/pc/i386/grub-install.in: Source
34017
	`${libdir}/grub/grub-mkconfig_lib' after options have been parsed.
34018
34019
2009-11-11  Robert Millan  <rmh.grub@aybabtu.com>
34020
34021
	Large file support for grub-mkisofs.
34022
34023
	* conf/common.rmk (grub_mkisofs_CFLAGS): Add `-D_FILE_OFFSET_BITS=64'.
34024
	* util/mkisofs/mkisofs.c (next_extent, last_extent)
34025
	(session_start): Upgrade type to `uint64_t'.  Update all users.
34026
	* util/mkisofs/mkisofs.h: Include `<stdint.h>'.
34027
	(struct directory_entry): Upgrade type of `starting_block' and
34028
	`size' to `uint64_t'.  Update all users.
34029
	(struct deferred): Remove unused structure.
34030
	(xfwrite): Upgrade type of `count' and `size' to `uint64_t'.
34031
	Update all users.
34032
	* util/mkisofs/tree.c (stat_filter, lstat_filter): Return -1 when
34033
	file is larger than `UINT32_MAX'.
34034
	* util/mkisofs/write.c (xfwrite): Upgrade type of `count' and
34035
	`size' to `uint64_t'.  Update all users.  Fix handling of fwrite()
34036
	return value.
34037
	(struct deferred_write): Upgrade type of `extent' and `size' to
34038
	`uint64_t'.  Update all users.
34039
	(last_extent_written): Upgrade type to `uint64_t'.  Update all
34040
	users.
34041
	(write_one_file): Upgrade type of `count' and `size' to `uint64_t'.
34042
	Update all users.  Upgrade type of `remain' to `int64_t' and
34043
	`use' to `size_t'.  Use error() to handle fread() errors.
34044
	(write_files): Rely on write_one_file() rather than calling
34045
	xfwrite() directly.
34046
34047
2009-11-09  Felix Zielcke  <fzielcke@z-51.de>
34048
34049
	* util/mkisofs/mkisofs.c (ld_options): Fix a spelling mistake.
34050
34051
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34052
34053
	* util/mkisofs/fnmatch.c: Remove.
34054
	* util/mkisofs/getopt1.c: Likewise.
34055
	* util/mkisofs/getopt.c: Likewise.
34056
	* conf/common.rmk (grub_mkisofs_SOURCES): Replace
34057
	`util/mkisofs/fnmatch.c', `util/mkisofs/getopt1.c' and
34058
	`util/mkisofs/getopt.c' with `gnulib/fnmatch.c',
34059
	`gnulib/getopt1.c' and `gnulib/getopt.c'.
34060
	(grub_mkisofs_CFLAGS): Add `-I$(srcdir)/gnulib'.
34061
34062
	* configure.ac: Detect `mingw32msvc' host_os.
34063
	Check for lstat(), getuid() and getgid().
34064
34065
	* util/mkisofs/joliet.c: Include `<stdint.h>'.  Replace all
34066
	instances of `u_char' with `uint8_t'.
34067
34068
	* util/mkisofs/mkisofs.h: Include `<sys/stat.h>'.
34069
	[!HAVE_GETUID] (getuid): New function (stub).
34070
	[!HAVE_GETGID] (getgid): Likewise.
34071
	[!HAVE_LSTAT] (lstat): Likewise.
34072
	[!S_IROTH] (S_IROTH): New macro (dummy).
34073
	[!S_IRGRP] (S_IRGRP): Likewise.
34074
34075
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34076
34077
	* gnulib/fnmatch_loop.c (EXT): Fix warning (signed and unsigned type in
34078
	conditional expression).
34079
34080
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34081
34082
	Import from Gnulib.
34083
34084
	* gnulib/fnmatch.c: New file.
34085
	* gnulib/fnmatch.h: Likewise.
34086
	* gnulib/fnmatch_loop.c: Likewise.
34087
	* gnulib/getopt.c: Likewise.
34088
	* gnulib/getopt.h: Likewise.
34089
	* gnulib/getopt1.c: Likewise.
34090
	* gnulib/getopt_int.h: Likewise.
34091
	* gnulib/gettext.h: Likewise.
34092
34093
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34094
34095
	* normal/dyncmd.c (read_command_list): Replace `0' with `NULL'.
34096
	* normal/handler.c (read_handler_list): Likewise.
34097
34098
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34099
34100
	Misc cleanup.
34101
34102
	* kern/command.c (grub_register_command_prio): Use
34103
	grub_zalloc() instead of explicitly zeroing data.
34104
	* kern/list.c: Include `<grub/mm.h>'.
34105
	(grub_named_list_find): Replace `0' with `NULL'.
34106
	* normal/autofs.c (struct grub_fs_module_list): Remove ad-hoc type.
34107
	(fs_module_list): Change type to `grub_named_list_t'.  Update all
34108
	users.
34109
	* normal/dyncmd.c (read_command_list): Add space between function
34110
	call and parenthesis.
34111
	* normal/handler.c (read_handler_list): Likewise.
34112
34113
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34114
34115
	* normal/auth.c (punishment_delay): Moved from here ...
34116
	(grub_auth_strcmp): ... to here (inside function).
34117
34118
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34119
34120
	* include/grub/list.h (struct grub_named_list): Remove `const'
34121
	qualifier from `name'.
34122
	(struct grub_prio_list): Likewise.
34123
34124
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34125
34126
	* normal/auth.c: Include `<grub/time.h>'.
34127
	(grub_auth_strcmp): Replace `strcmp' with `grub_strcmp'.
34128
34129
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34130
34131
	* normal/auth.c (punishment_delay): New variable.
34132
	(grub_auth_strcmp): Rewrite using grub_get_time_ms ().
34133
	(grub_auth_check_authentication): Punish failed login attempts with
34134
	an incremental (2^N) delay.
34135
34136
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34137
34138
	* conf/common.rmk (grub_mkisofs_CFLAGS): Prefix include
34139
	path with $(srcdir).
34140
34141
2009-11-09  Vladimir Serbinenko  <phcoder@gmail.com>
34142
34143
	* normal/auth.c (grub_auth_strcmp): Fixed incorrect variable usage.
34144
34145
2009-11-09  Robert Millan  <rmh.grub@aybabtu.com>
34146
34147
	* util/i386/coreboot/grub-mkrescue.in: New file.
34148
	* conf/i386-coreboot.rmk (bin_SCRIPTS, grub_mkrescue_SOURCES): New
34149
	variables.
34150
34151
	* conf/common.rmk (bin_UTILITIES): Add `grub-mkisofs'.
34152
	(grub_mkisofs_SOURCES, grub_mkisofs_CFLAGS): New variables.
34153
	* configure.ac: Add header and function checks to satisfy grub-mkisofs
34154
	requirements.
34155
	* util/mkisofs/defaults.h: New file.
34156
	* util/mkisofs/eltorito.c: Likewise.
34157
	* util/mkisofs/exclude.h: Likewise.
34158
	* util/mkisofs/fnmatch.c: Likewise.
34159
	* util/mkisofs/getopt.c: Likewise.
34160
	* util/mkisofs/getopt1.c: Likewise.
34161
	* util/mkisofs/hash.c: Likewise.
34162
	* util/mkisofs/include/fctldefs.h: Likewise.
34163
	* util/mkisofs/include/mconfig.h: Likewise.
34164
	* util/mkisofs/include/prototyp.h: Likewise.
34165
	* util/mkisofs/include/statdefs.h: Likewise.
34166
	* util/mkisofs/iso9660.h: Likewise.
34167
	* util/mkisofs/joliet.c: Likewise.
34168
	* util/mkisofs/match.c: Likewise.
34169
	* util/mkisofs/match.h: Likewise.
34170
	* util/mkisofs/mkisofs.c: Likewise.
34171
	* util/mkisofs/mkisofs.h: Likewise.
34172
	* util/mkisofs/multi.c: Likewise.
34173
	* util/mkisofs/name.c: Likewise.
34174
	* util/mkisofs/rock.c: Likewise.
34175
	* util/mkisofs/tree.c: Likewise.
34176
	* util/mkisofs/write.c: Likewise.
34177
34178
2009-11-09  Vladimir Serbinenko  <phcoder@gmail.com>
34179
34180
	* normal/auth.c (grub_auth_strcmp): Fix bug which resulted in function
34181
	being insecure.
34182
34183
2009-11-08  Robert Millan  <rmh.grub@aybabtu.com>
34184
34185
	* util/i386/pc/grub-mkrescue.in: Fix miss-identification as
34186
	`grub-mkimage' (and use $0 when possible).
34187
34188
2009-11-08  Robert Millan  <rmh.grub@aybabtu.com>
34189
34190
	* kern/i386/multiboot_mmap.c (grub_machine_mmap_init): Improve
34191
	error message for excessively large memory map.
34192
34193
2009-11-08  Robert Millan  <rmh.grub@aybabtu.com>
34194
34195
	* autogen.sh: Use `sh gendistlist.sh' to avoid reliing on
34196
	executable bit.
34197
34198
2009-11-08  Robert Millan  <rmh.grub@aybabtu.com>
34199
34200
	* kern/i386/multiboot_mmap.c (grub_machine_mmap_init): Improve error
34201
	message for coreboot users.
34202
34203
2009-11-07  Robert Millan  <rmh.grub@aybabtu.com>
34204
34205
	Fix build with GNU gold.
34206
34207
	* conf/i386-pc.rmk (boot_img_LDFLAGS, pxeboot_img_LDFLAGS)
34208
	(diskboot_img_LDFLAGS, lnxboot_img_LDFLAGS)
34209
	(cdboot_img_LDFLAGS): Prepend `0x' qualifier to hexadecimal
34210
	link addresses.
34211
	* aclocal.m4: Likewise.
34212
34213
2009-11-04  Felix Zielcke  <fzielcke@z-51.de>
34214
34215
	* configure.ac (AC_PREREQ): Bump to 2.59d.
34216
	* INSTALL: Make it more clear when Autoconf and Ruby are
34217
	needed and when to run `./autogen.sh'.
34218
34219
2009-11-03  Samuel Thibault  <samuel.thibault@ens-lyon.org>
34220
34221
	* util/grub.d/30_os-prober.in: Restore default behavior for unsupported
34222
	OSes.
34223
34224
2009-11-02  Samuel Thibault  <samuel.thibault@ens-lyon.org>
34225
34226
	* util/grub.d/30_os-prober.in: Add GNU/Hurd support
34227
34228
2009-11-02  Samuel Thibault  <samuel.thibault@ens-lyon.org>
34229
34230
	* util/grub.d/10_hurd.in: Drop /dev/ prefix from root device path before
34231
	giving it to GNU Mach.
34232
34233
2009-11-02  Samuel Thibault  <samuel.thibault@ens-lyon.org>
34234
34235
	* util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Subtract 1 from
34236
	GNU partition number to get internal GRUB partition number.
34237
34238
2009-11-02  Samuel Thibault  <samuel.thibault@ens-lyon.org>
34239
34240
	* util/grub.d/10_hurd.in: Call prepare_grub_to_access_device
34241
	${GRUB_DEVICE_BOOT} before loading /boot kernel.
34242
34243
2009-11-01  Robert Millan  <rmh.grub@aybabtu.com>
34244
34245
	Based on patch from BVK Chaitanya  <bvk.groups@gmail.com>
34246
	* kern/misc.c (grub_strchr, grub_strrchr): Fix to handle c == '\0'
34247
	case.
34248
34249
2009-11-01  Felix Zielcke  <fzielcke@z-51.de>
34250
34251
	* Makefile.in (TARGET_CPPFLAGS): Add `-I$(srcdir)/include'.
34252
34253
2009-10-30  Robert Millan  <rmh.grub@aybabtu.com>
34254
34255
	Fix build problem.
34256
34257
	* Makefile.in (TARGET_CPPFLAGS): Replace `-nostdinc' with
34258
	`-isystem=$(srcdir)/include'.
34259
34260
2009-10-30  Robert Millan  <rmh.grub@aybabtu.com>
34261
34262
	* util/i386/pc/grub-install.in: Remove hint that device.map should be
34263
	checked (grub-install doesn't currently rely on it).
34264
34265
2009-10-29  Robert Millan  <rmh.grub@aybabtu.com>
34266
34267
	Revert SVN r2660.
34268
34269
	* conf/common.rmk (script/sh/lexer.c_DEPENDENCIES): Moved from here ...
34270
	* conf/i386-coreboot.rmk (script/sh/lexer.c_DEPENDENCIES): ... to here.
34271
	* conf/i386-efi.rmk (script/sh/lexer.c_DEPENDENCIES): ... and here.
34272
	* conf/i386-ieee1275.rmk: Likewise.
34273
	* conf/i386-pc.rmk: Likewise.
34274
	* conf/powerpc-ieee1275.rmk: Likewise.
34275
	* conf/sparc64-ieee1275.rmk: Likewise.
34276
	* conf/x86_64-efi.rmk: Likewise.
34277
34278
2009-10-28  Robert Millan  <rmh.grub@aybabtu.com>
34279
34280
	* Makefile.in (TARGET_CPPFLAGS): Add `-nostdinc'.
34281
34282
2009-10-28  Robert Millan  <rmh.grub@aybabtu.com>
34283
34284
	* include/grub/misc.h: Stop checking for APPLE_CC.
34285
34286
2009-10-28  Robert Millan  <rmh.grub@aybabtu.com>
34287
34288
	* kern/i386/coreboot/init.c (grub_exit): Reimplement in a way that
34289
	doesn't cause an infinite call loop.
34290
34291
2009-10-28  Felix Zielcke  <fzielcke@z-51.de>
34292
34293
	* commands/acpi.c (grub_cmd_acpi): Fix the out of memory error
34294
	strings.
34295
34296
2009-10-26  Robert Millan  <rmh.grub@aybabtu.com>
34297
34298
	* autogen.sh: Support addition of external modules via `GRUB_CONTRIB'
34299
	variable.
34300
	* Makefile.in: Likewise.
34301
34302
2009-10-26  Robert Millan  <rmh.grub@aybabtu.com>
34303
34304
	* gendistlist.sh: Simplify .svn check.  Skip .bzr as well.
34305
34306
2009-10-26  Robert Millan  <rmh.grub@aybabtu.com>
34307
34308
	* Makefile.in (RMKFILES): Rewrite using $(wildcard).
34309
34310
2009-10-26  Robert Millan  <rmh.grub@aybabtu.com>
34311
34312
	* disk/scsi.c: Remove `<grub/machine/kernel.h>' (not needed).
34313
34314
2009-10-26  Robert Millan  <rmh.grub@aybabtu.com>
34315
34316
	* gensymlist.sh.in (COMPILE_TIME_ASSERT): Copy macro declaration
34317
	from here ...
34318
	* include/grub/misc.h (COMPILE_TIME_ASSERT): ... to here.
34319
34320
2009-10-26  Robert Millan  <rmh.grub@aybabtu.com>
34321
34322
	* Makefile.in (docs/grub.info): Use make syntax to ignore errors
34323
	in $(MAKEINFO) invocation.  This makes it clear in output that
34324
	errors are being ignored.
34325
34326
2009-10-26  Robert Millan  <rmh.grub@aybabtu.com>
34327
34328
	* conf/i386-coreboot.rmk (script/sh/lexer.c_DEPENDENCIES): Moved
34329
	from here ...
34330
	* conf/common.rmk (script/sh/lexer.c_DEPENDENCIES): ... to here.
34331
	* conf/i386-efi.rmk (script/sh/lexer.c_DEPENDENCIES): Remove.
34332
	* conf/i386-ieee1275.rmk: Likewise.
34333
	* conf/i386-pc.rmk: Likewise.
34334
	* conf/powerpc-ieee1275.rmk: Likewise.
34335
	* conf/sparc64-ieee1275.rmk: Likewise.
34336
	* conf/x86_64-efi.rmk: Likewise.
34337
34338
2009-10-26  Colin Watson  <cjwatson@ubuntu.com>
34339
34340
	* util/grub-editenv.c (main): If only a command is given, use
34341
	DEFAULT_DIRECTORY "/" GRUB_ENVBLK_DEFCFG as a default file name.
34342
	(usage): FILENAME is now optional and has a default.
34343
34344
2009-10-26  Colin Watson  <cjwatson@ubuntu.com>
34345
34346
	Improve grub-mkconfig performance when there are several menu
34347
	entries on a single filesystem.
34348
34349
	* util/grub.d/10_linux.in (linux_entry): Cache the output of
34350
	prepare_grub_to_access_device.
34351
	* util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise.
34352
	* util/grub.d/30_os-prober.in: Likewise.
34353
34354
2009-10-26  Robert Millan  <rmh.grub@aybabtu.com>
34355
34356
	* util/grub.d/10_freebsd.in: Remove.
34357
	* util/grub.d/10_kfreebsd.in: New file (based on 10_linux.in).
34358
	* configure.ac: Set host_kernel=kfreebsd for FreeBSD and GNU/kFreeBSD.
34359
34360
2009-10-26  Robert Millan  <rmh.grub@aybabtu.com>
34361
34362
	* docs/grub.cfg: Fix example usage of *BSD loaders.
1.21.1 by Robert Millan
Import upstream version 1.97+experimental.20091026
34363
17.2.18 by Felix Zielcke, Robert Millan, Felix Zielcke, Updated translations
[ Robert Millan ]
34364
2009-10-25  Robert Millan  <rmh.grub@aybabtu.com>
34365
34366
	* util/i386/pc/grub-setup.c (setup): Add missing parameter to
34367
	grub_util_error() call.
34368
34369
2009-10-25  Robert Millan  <rmh.grub@aybabtu.com>
34370
34371
	* include/grub/fs.h [GRUB_UTIL] (struct grub_fs): Add
34372
	`reserved_first_sector' member.
34373
	* fs/ext2.c [GRUB_UTIL] (grub_ext2_fs): Initialize
34374
	`reserved_first_sector' to 1.
34375
	* fs/fat.c [GRUB_UTIL] (grub_fat_fs): Likewise.
34376
	* fs/ntfs.c [GRUB_UTIL] (grub_ntfs_fs): Likewise.
34377
	* fs/hfsplus.c [GRUB_UTIL] (grub_hfsplus_fs): Likewise.
34378
	* util/i386/pc/grub-setup.c (setup): Add safety check that probes for
34379
	filesystems which begin at first sector.
34380
	(options): New option --skip-fs-probe.
34381
	(main): Handle --skip-fs-probe and pass it to setup().
34382
34383
2009-10-25  Robert Millan  <rmh.grub@aybabtu.com>
34384
34385
	* include/grub/misc.h: Fix wrong evaluation of APPLE_CC.
34386
	(memset): Fix function prototype.
34387
34388
2009-10-25  Robert Millan  <rmh.grub@aybabtu.com>
34389
2009-10-25  Vasily Averin  <vvs@parallels.com>
34390
34391
	* fs/ext2.c (grub_ext2_iterate_dir): Avoid infinite loop when
34392
	`dirent.direntlen == 0'.
34393
34394
2009-10-25  Robert Millan  <rmh.grub@aybabtu.com>
34395
34396
	* fs/cpio.c [MODE_USTAR]: Initialize `tar' module instead of
34397
	`cpio'.
34398
	[! MODE_USTAR]: Initialize `cpio' module instead of `tar'.
34399
34400
2009-10-25  Robert Millan  <rmh.grub@aybabtu.com>
34401
34402
	* configure.ac: Check for `__ashldi3', `__ashrdi3', `__lshrdi3',
34403
	`__trampoline_setup' and `__ucmpdi2'.
34404
	* include/grub/powerpc/libgcc.h: Only export symbols for functions
34405
	that libgcc provides.
34406
34407
2009-10-25  Robert Millan  <rmh.grub@aybabtu.com>
34408
34409
	* include/grub/powerpc/libgcc.h (memset): Remove function prototype.
34410
	* include/grub/sparc64/libgcc.h (memset): Likewise.
34411
	* include/grub/misc.h (memset, memcmp): New function prototypes.
34412
34413
2009-10-25  Robert Millan  <rmh.grub@aybabtu.com>
34414
34415
	* fs/cpio.c [MODE_USTAR]: Finish `tar' module instead of
34416
	`cpio'.
34417
	[! MODE_USTAR]: Finish `cpio' module instead of `tar'.
34418
34419
2009-10-25  Robert Millan  <rmh.grub@aybabtu.com>
34420
34421
	Patch from Samuel Thibault <samuel.thibault@ens-lyon.org>
34422
	* docs/grub.cfg: Compensate for recent change in multiboot
34423
	loader (since 2009-08-14 it won't pass filename to payload).
34424
	* util/grub.d/10_hurd.in: Likewise.
34425
34426
2009-10-21  Felix Zielcke  <fzielcke@z-51.de>
34427
34428
	* config.guess: Update to latest version from config git
34429
	repository.
34430
	* config.sub: Likewise.
34431
34432
2009-10-20  Robert Millan  <rmh.grub@aybabtu.com>
34433
34434
	Fix build on sparc64.
34435
34436
	* configure.ac: Perform checks for libgcc symbols before
34437
	adding `-nostdlib' to LDFLAGS.
34438
34439
2009-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
34440
34441
	Let user specify OpenBSD root device.
34442
34443
	* loader/i386/bsd.c (openbsd_root): New variable.
34444
	(openbsd_opts): New option 'root'.
34445
	(OPENBSD_ROOT_ARG): New macro.
34446
	(grub_openbsd_boot): Use 'openbsd_root'.
34447
	(grub_cmd_openbsd): Fill 'openbsd_root'.
34448
34449
2009-10-16  Robert Millan  <rmh.grub@aybabtu.com>
34450
34451
	* NEWS: Misc adjustments.
34452
34453
2009-10-16  Vladimir Serbinenko  <phcoder@gmail.com>
34454
34455
	* NEWS: Mentioned XNU, ACPI, gptsync, password and parttool.
34456
34457
2009-10-16  Robert Millan  <rmh.grub@aybabtu.com>
34458
34459
	* configure.ac: Bump version to 1.97.
34460
34461
2009-10-16  Colin Watson  <cjwatson@ubuntu.com>
34462
34463
	* configure.ac (TARGET_CFLAGS): Add -mno-mmx -mno-sse -mno-sse2
34464
	-mno-3dnow on x86 architectures.  Some toolchains enable these
34465
	features by default, but they rely on registers that aren't enabled
34466
	in GRUB.  Thanks to Vladimir Serbinenko for the suggestion.
34467
34468
2009-10-15  Robert Millan  <rmh.grub@aybabtu.com>
34469
34470
	Make entry text a bit more readable.
34471
34472
	* util/grub.d/10_linux.in: Add `with' before `Linux'.
34473
34474
2009-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
34475
34476
	* loader/i386/pc/xnu.c (grub_xnu_set_video): Fix loading splash image.
34477
34478
2009-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
34479
34480
	* commands/xnu_uuid.c (grub_cmd_xnu_uuid): Remove duplicated bitwise
34481
	operations.
34482
34483
2009-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
34484
34485
	* configure.ac: Add missing dollar.
34486
34487
2009-10-15  Vladimir Serbinenko  <phcoder@gmail.com>
34488
34489
        Revert 2009-06-10  Pavel Roskin  <proski@gnu.org>
34490
34491
	* configure.ac: Put checks for __bswapsi2 and __bswapdi2.
34492
	* include/grub/powerpc/libgcc.h: Don't use weak attribute for all
34493
	exports.
34494
	* include/grub/sparc64/libgcc.h: Likewise.  Use
34495
	preprocessor conditionals.
34496
34497
2009-10-14  Robert Millan  <rmh.grub@aybabtu.com>
34498
34499
	* conf/common.rmk (grub-dumpbios): Remove rule.
34500
	(sbin_SCRIPTS, CLEANFILES): Remove `grub-dumpbios'.
34501
	* util/grub-dumpbios.in: Remove file.
34502
34503
2009-10-14  Robert Millan  <rmh.grub@aybabtu.com>
34504
34505
	Refer to kernel of FreeBSD "kFreeBSD" to avoid confusion between
34506
	the Operating System (FreeBSD) and its kernel (kernel of FreeBSD).
34507
34508
	* loader/i386/bsd.c (grub_freebsd_boot): Read kernel environment
34509
	from "kFreeBSD" namespace (rather than "FreeBSD").  Update all
34510
	users.
34511
34512
	(GRUB_MOD_INIT (bsd)): Rename "freebsd" command to "kfreebsd",
34513
	"openbsd" to "kopenbsd", "netbsd" to "knetbsd", "freebsd_loadenv"
34514
	to "kfreebsd_loadenv", "freebsd_module" to "kfreebsd_module",
34515
	and "freebsd_module_elf" to "kfreebsd_module_elf".  Update all
34516
	users.
34517
34518
2009-10-12  Robert Millan  <rmh.grub@aybabtu.com>
34519
34520
	* term/tparm.c: Switch to GPLv3.
34521
34522
2009-10-09  Robert Millan  <rmh.grub@aybabtu.com>
34523
34524
	* include/grub/i386/cpuid.h: Add header protection.
34525
34526
2009-10-09  Robert Millan  <rmh.grub@aybabtu.com>
34527
34528
	Fail gracefuly when attempting to load 64-bit kFreeBSD on IA32 CPU.
34529
34530
	* include/grub/i386/cpuid.h: New file.
34531
	* commands/i386/cpuid.c: Include `<grub/i386/cpuid.h>'.
34532
	(has_longmode): Rename to ...
34533
	(grub_cpuid_has_longmode): ... this.  Update all users.  Remove
34534
	`static' attribute.
34535
	* loader/i386/bsd.c: Include `<grub/i386/cpuid.h>'.
34536
	(grub_bsd_load_elf): Fail if load of 64-bit kernel was requested
34537
	on a CPU that doesn't implement AMD64 instruction set.
34538
34539
2009-10-06  Colin Watson  <cjwatson@ubuntu.com>
34540
34541
	* Makefile.in (docs/stamp-vti): Depend on configure.ac as well, so
34542
	that version.texi is rebuilt on version number changes.
34543
34544
2009-10-06  Colin Watson  <cjwatson@ubuntu.com>
34545
34546
	* Makefile.in: Don't set info_INFOS unless makeinfo was found.
34547
	Fixes bug #27602.
34548
34549
2009-10-06  Colin Watson  <cjwatson@ubuntu.com>
34550
34551
	* util/i386/pc/grub-install.in: Source
34552
	${libdir}/grub/grub-mkconfig_lib before option processing, in order
34553
	that the --grub-probe option will work.
34554
	* util/sparc64/ieee1275/grub-install.in: Likewise.
34555
1.2.8 by Robert Millan
Import upstream version 1.97~beta4
34556
2009-10-05  Robert Millan  <rmh.grub@aybabtu.com>
34557
34558
	* configure.ac: Bump version to 1.97~beta4.
34559
34560
2009-10-03  Robert Millan  <rmh.grub@aybabtu.com>
34561
34562
	Resync grub-mkdevicemap in x86_64-efi.
34563
34564
	* conf/x86_64-efi.rmk (sbin_UTILITIES): Enable `grub-mkdevicemap'.
34565
	(grub_mkdevicemap_SOURCES): Add missing `util/deviceiter.c' and
34566
	`util/devicemap.c'.
34567
1.20.1 by Robert Millan
Import upstream version 1.97~beta3+20091003
34568
2009-10-01  Colin Watson  <cjwatson@ubuntu.com>
34569
34570
	* util/grub-editenv.c (create_envblk_file): Write new block with a
34571
	.new suffix and then rename it into place, to ensure atomic
34572
	creation.
34573
34574
2009-09-28  Robert Millan  <rmh.grub@aybabtu.com>
34575
34576
	Do not automatically install headers.
34577
34578
	* Makefile.in (include_DATA): Remove.  Update all users.
34579
34580
2009-09-26  Robert Millan  <rmh.grub@aybabtu.com>
34581
34582
	* conf/common.rmk (pkglib_MODULES): Remove `lua.mod'.
34583
	(lua_mod_SOURCES, lua_mod_CFLAGS, lua_mod_LDFLAGS): Remove.
34584
34585
	* util/osdetect.lua: Remove.
34586
	* script/lua/lauxlib.c: Likewise.
34587
	* script/lua/ldebug.c: Likewise.
34588
	* script/lua/grub_main.c: Likewise.
34589
	* script/lua/lauxlib.h: Likewise.
34590
	* script/lua/ldebug.h: Likewise.
34591
	* script/lua/ltablib.c: Likewise.
34592
	* script/lua/liolib.c: Likewise.
34593
	* script/lua/lstrlib.c: Likewise.
34594
	* script/lua/lualib.h: Likewise.
34595
	* script/lua/ldo.c: Likewise.
34596
	* script/lua/ldump.c: Likewise.
34597
	* script/lua/ldo.h: Likewise.
34598
	* script/lua/loslib.c: Likewise.
34599
	* script/lua/lundump.c: Likewise.
34600
	* script/lua/grub_lib.c: Likewise.
34601
	* script/lua/ldblib.c: Likewise.
34602
	* script/lua/lundump.h: Likewise.
34603
	* script/lua/lmem.c: Likewise.
34604
	* script/lua/grub_lib.h: Likewise.
34605
	* script/lua/lmathlib.c: Likewise.
34606
	* script/lua/lstate.c: Likewise.
34607
	* script/lua/ltm.c: Likewise.
34608
	* script/lua/lvm.c: Likewise.
34609
	* script/lua/lmem.h: Likewise.
34610
	* script/lua/lstate.h: Likewise.
34611
	* script/lua/ltm.h: Likewise.
34612
	* script/lua/ltable.c: Likewise.
34613
	* script/lua/lvm.h: Likewise.
34614
	* script/lua/llex.c: Likewise.
34615
	* script/lua/lgc.c: Likewise.
34616
	* script/lua/grub_lua.h: Likewise.
34617
	* script/lua/loadlib.c: Likewise.
34618
	* script/lua/lfunc.c: Likewise.
34619
	* script/lua/lopcodes.c: Likewise.
34620
	* script/lua/lparser.c: Likewise.
34621
	* script/lua/ltable.h: Likewise.
34622
	* script/lua/llex.h: Likewise.
34623
	* script/lua/lgc.h: Likewise.
34624
	* script/lua/lfunc.h: Likewise.
34625
	* script/lua/lbaselib.c: Likewise.
34626
	* script/lua/lopcodes.h: Likewise.
34627
	* script/lua/lparser.h: Likewise.
34628
	* script/lua/lzio.c: Likewise.
34629
	* script/lua/linit.c: Likewise.
34630
	* script/lua/lobject.c: Likewise.
34631
	* script/lua/llimits.h: Likewise.
34632
	* script/lua/lstring.c: Likewise.
34633
	* script/lua/lzio.h: Likewise.
34634
	* script/lua/lapi.c: Likewise.
34635
	* script/lua/lcode.c: Likewise.
34636
	* script/lua/lua.h: Likewise.
34637
	* script/lua/lobject.h: Likewise.
34638
	* script/lua/lstring.h: Likewise.
34639
	* script/lua/lapi.h: Likewise.
34640
	* script/lua/lcode.h: Likewise.
34641
	* script/lua/luaconf.h: Likewise.
34642
34643
2009-09-26  Colin Watson  <cjwatson@ubuntu.com>
34644
34645
	* docs/grub.texi (Command-line and menu entry commands): Document
34646
	date and echo commands.
34647
34648
2009-09-24  Pavel Roskin  <proski@gnu.org>
34649
34650
	* include/grub/kernel.h (struct grub_module_header): Remove
34651
	`grub_module_header_types'.  Make `type' unsigned.  Make `size'
34652
	32-bit on all platforms.
34653
	* util/elf/grub-mkimage.c (load_modules): Treat `type' as an
34654
	8-bit field.  Use grub_host_to_target32() for `size'.
34655
	* util/i386/efi/grub-mkimage.c (make_mods_section): Likewise.
34656
	* util/i386/pc/grub-mkimage.c (generate_image): Likewise.
34657
	* util/sparc64/ieee1275/grub-mkimage.c (generate_image): Likewise.
34658
34659
2009-09-24  Robert Millan  <rmh.grub@aybabtu.com>
34660
34661
	Fix "lost keypress" bug in at_keyboard.
34662
34663
	* term/i386/pc/at_keyboard.c (grub_at_keyboard_checkkey): New function.
34664
	Checks for readyness of input buffer (without flushing it).
34665
	(grub_at_keyboard_term): Use grub_at_keyboard_checkkey() rather
34666
	than grub_at_keyboard_getkey_noblock() for `checkkey' struct member.
34667
34668
2009-09-24  Robert Millan  <rmh.grub@aybabtu.com>
34669
34670
	* util/i386/pc/grub-mkimage.c (generate_image): Enclose BIOS-specific
34671
	size check within GRUB_MACHINE_PCBIOS section.
34672
34673
2009-09-24  Robert Millan  <rmh.grub@aybabtu.com>
34674
34675
	* include/grub/i386/at_keyboard.h (KEYBOARD_ISREADY): Negate
34676
	return value.
34677
	* term/i386/pc/at_keyboard.c (grub_keyboard_getkey): Negate
34678
	KEYBOARD_ISREADY check.
34679
	(grub_at_keyboard_checkkey): Rename to ...
34680
	(grub_at_keyboard_getkey_noblock): ... this.  Update all users.
34681
	Remove gratuitous cast.
34682
34683
2009-09-23  Colin Watson  <cjwatson@ubuntu.com>
34684
34685
	* configure.ac: Call AC_PROG_MKDIR_P.
34686
	* Makefile.in (docs/stamp-vti): Create docs directory.  Create
34687
	version.texi in $(builddir) rather than $(srcdir).
34688
	(docs/grub.info): Create docs directory.  Prepend $(builddir)/docs
34689
	to makeinfo's @include search path.
34690
34691
2009-09-23  Felix Zielcke  <fzielcke@z-51.de>
34692
34693
	* util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Cope with `*.dpkg-*'
34694
34695
2009-09-23  Felix Zielcke  <fzielcke@z-51.de>
34696
34697
	* util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Add support
34698
	for `*.dpkg-new'.
34699
34700
2009-09-21  Colin Watson  <cjwatson@ubuntu.com>
34701
34702
	Build info documentation.  Some code borrowed from Automake.
34703
34704
	* configure.ac: Check for makeinfo.
34705
	* Makefile.in (MAKEINFO, INFOS, info_INFOS): New variables.
34706
	(MAINTAINER_CLEANFILES): Add $(INFOS), docs/stamp-vti, and
34707
	docs/version.texi.
34708
	(MOSTLYCLEANFILES): Add vti.tmp.
34709
	(docs/version.texi, docs/stamp-vti): Update automatically.
34710
	(docs/grub.info): Build info documentation.  Use --force and ignore
34711
	errors for now.
34712
	(all-local): Add $(INFOS).
34713
	(install-local): Install info files.
34714
	(uninstall): Uninstall info files.
34715
	* docs/version.texi: Remove from revision control.  This file is
34716
	automatically generated on build now.
34717
	* gendistlist.sh: Add `*.info'.
34718
34719
2009-09-21  Felix Zielcke  <fzielcke@z-51.de>
34720
34721
	* kern/term.c: Fix indentation.
34722
34723
2009-09-21  Felix Zielcke  <fzielcke@z-51.de>
34724
34725
	* util/hostdisk.c: Fix a comment.
34726
34727
2009-09-20  Robert Millan  <rmh.grub@aybabtu.com>
34728
34729
	Fix regression introduced in r2539.
34730
34731
	* term/usb_keyboard.c (USB_HID_DEVICE_TO_HOST): Change from 0x61
34732
	to 0xA1.
34733
34734
2009-09-19  Colin Watson  <cjwatson@ubuntu.com>
34735
34736
	* util/grub.d/30_os-prober.in: Don't throw away stderr from
34737
	os-prober. Under normal operation, it does not print anything to
34738
	stderr; if it does, we need to debug it, and throwing away stderr
34739
	makes that excessively difficult.
34740
34741
2009-09-16  Vladimir Serbinenko  <phcoder@gmail.com>
34742
34743
	* mmap/mmap.c (grub_cmd_badram): Fix off-by-one error.
34744
34745
2009-09-16  Robert Millan  <rmh.grub@aybabtu.com>
34746
34747
	* aclocal.m4 (AC_LANG_PROGRAM): New macro.  Overrides stock
34748
	AC_LANG_PROGRAM from autoconf.
34749
	(grub_ASM_USCORE, grub_PROG_OBJCOPY_ABSOLUTE): Add missing
34750
	prototypes (fixes warning).
34751
34752
	* configure.ac: Add `-Werror' to TARGET_CFLAGS unless
34753
	`--disable-werror' was used.
34754
34755
2009-09-16  Robert Millan  <rmh.grub@aybabtu.com>
34756
34757
	* partmap/msdos.c (pc_partition_map_iterate): Fix possible use of
34758
	uninitialized `lastaddr'.
34759
34760
2009-09-15  Vladimir Serbinenko  <phcoder@gmail.com>
34761
34762
	* partmap/msdos.c (pc_partition_map_iterate): Detect and break loops.
34763
34764
2009-09-14  Colin Watson  <cjwatson@ubuntu.com>
34765
34766
	* commands/test.c (get_fileinfo): Return immediately if
34767
	grub_fs_probe fails.
34768
34769
2009-09-14  José Martínez  <xosemp@gmail.com>
34770
34771
	* commands/acpi.c (grub_cmd_acpi): Fix loading ACPI tables from file.
34772
34773
2009-09-14  Colin Watson  <cjwatson@ubuntu.com>
34774
34775
	* util/grub.d/30_os-prober.in: Cope with Windows 7 in os-prober
34776
	output.
34777
34778
2009-09-13  Robert Millan  <rmh.grub@aybabtu.com>
34779
34780
	* configure.ac: Remove --enable-grub-pe2elf.  Only build
34781
	grub-pe2elf when needed by the build system itself.
34782
	* conf/common.rmk: Remove $(enable_grub_pe2elf) check.
34783
1.2.7 by Felix Zielcke
Import upstream version 1.97~beta3
34784
2009-09-12  Robert Millan  <rmh.grub@aybabtu.com>
34785
34786
	* configure.ac: Bump version to 1.97~beta3.
34787
	* docs/version.texi: Likewise.
34788
34789
2009-09-12  Robert Millan  <rmh.grub@aybabtu.com>
34790
34791
	* video/i386/pc/vbe.c (grub_vbe_get_video_mode_info): Move packed
34792
	mode special handling (grub_vbe_bios_set_dac_palette_width() call)
34793
	from here ...
34794
	* loader/i386/linux.c [GRUB_MACHINE_PCBIOS]
34795
	(grub_linux_setup_video): ... to here (with some adjustments).
34796
34797
2009-09-12  Robert Millan  <rmh.grub@aybabtu.com>
34798
34799
	Fix memory corruption issue (spotted by Colin Watson).
34800
34801
	* kern/i386/pc/startup.S (grub_vbe_bios_getset_dac_palette): Fix bug
34802
	causing returned size to be stored in an incorrect memory location.
34803
	Fix use of uninitialized value when storing the returned size.
34804
34805
2009-09-12  Yves Blusseau  <blusseau@zetam.org>
34806
34807
	Change clean rules to properly remove files
34808
34809
	* genmk.rb: add new clean rules
34810
	* Makefile.in (clean): add the new targets
34811
	(mostlyclean): likewise
34812
34813
2009-09-11  Colin Watson  <cjwatson@ubuntu.com>
34814
34815
	* include/grub/ntfs.h (struct grub_fshelp_node): Change `size'
34816
	to grub_uint64_t.
34817
	* fs/ntfs.c (init_file): Understand 64-bit sizes for
34818
	non-resident files.
34819
34820
2009-09-11  Colin Watson  <cjwatson@ubuntu.com>
34821
34822
	* configure.ac: Don't look for help2man when cross-compiling.  Fixes
34823
	part of bug #27349.
34824
34825
2009-09-10  Felix Zielcke  <fzielcke@z-51.de>
34826
34827
	* util/grub-mkconfig.in: Make the created config mode 400 and
34828
	print a warning if it fails.
34829
34830
2009-09-10  Robert Millan  <rmh.grub@aybabtu.com>
34831
34832
	* util/grub.d/40_custom.in: Ask user to type custom entries below
34833
	comment, rather than below 'exec tail' line.
34834
34835
2009-09-10  Colin Watson  <cjwatson@ubuntu.com>
34836
34837
	* util/grub.d/40_custom.in: Make sure that the explanatory text is
34838
	visible in grub.cfg.
34839
34840
2009-09-10  Colin Watson  <cjwatson@ubuntu.com>
34841
34842
	* util/grub.d/40_custom.in: Make it a little clearer how to use this
34843
	file.
34844
34845
2009-09-10  Felix Zielcke  <fzielcke@z-51.de>
34846
34847
	* docs/grub.cfg: Add an example menu entry for memtest86+.
34848
34849
2009-09-09  Felix Zielcke  <fzielcke@z-51.de>
34850
34851
	* config.guess: Update to latest version from config git.
34852
	* config.sub: Likewise.
34853
34854
2009-09-08  Colin Watson  <cjwatson@ubuntu.com>
34855
34856
	* script/sh/execute.c (grub_script_execute_cmdline): Set "?" in
34857
	unknown-command case.  Fixes bug #27320.
34858
34859
2009-09-08  Felix Zielcke  <fzielcke@z-51.de>
34860
34861
	* kern/rescue_parser.c (grub_rescue_parse_line): Only suggest to try
34862
	`help' if the command exists.
34863
34864
2009-09-06  Robert Millan  <rmh.grub@aybabtu.com>
34865
34866
	* INSTALL: Require GCC 4.1.3 or later.
34867
34868
2009-09-06  Yves Blusseau  <blusseau@zetam.org>
34869
34870
	* Makefile.in (RMKFILES): add i386-qemu.rmk
34871
	(MAINTAINER_CLEANFILES): add $(srcdir)/DISTLIST $(srcdir)/config.h.in
34872
	$(srcdir)/stamp-h.in
34873
34874
2009-09-05  Robert Millan  <rmh.grub@aybabtu.com>
34875
34876
	* util/grub-probe.c (probe): Comment out buggy codepath, which
34877
	was unexpectedly enabled by Colin Watson's 2009-09-02 fix.  This
34878
	should be re-enabled after 1.97.
34879
34880
2009-09-05  Felix Zielcke  <fzielcke@z-51.de>
34881
34882
	* gendistlist.sh: Add `grub-dumpdevtree' and `*.lua' to the list
34883
	find searches for.
34884
34885
2009-09-04  Vladimir Serbinenko  <phcoder@gmail.com>
34886
34887
	* loader/i386/xnu.c (grub_cpu_xnu_fill_devicetree): Remove
34888
	unnecessary calls to grub_error.
34889
34890
2009-09-04  Colin Watson  <cjwatson@ubuntu.com>
34891
34892
	* NEWS: Mention `keystatus' and Unicode fonts.
34893
1.2.6 by Felix Zielcke
Import upstream version 1.97~beta2
34894
2009-09-04  Robert Millan  <rmh.grub@aybabtu.com>
34895
34896
	* configure.ac: Bump version to 1.97~beta2.
34897
	* docs/version.texi: Likewise.
34898
34899
2009-09-03  Colin Watson  <cjwatson@ubuntu.com>
34900
34901
	* configure.ac: By default, GCC 4.4 generates .eh_frame sections
34902
	containing unwind information in some cases where it previously did
34903
	not. Use -fno-dwarf2-cfi-asm if available to restore the old
34904
	behaviour. See http://patchwork.kernel.org/patch/8555/ for related
34905
	discussion.
34906
34907
2009-09-02  Yves BLUSSEAU  <blusseau@zetam.org>
34908
34909
	Embedding loadenv module into grub-emu
34910
34911
	* conf/i386-pc.rmk (grub_emu_SOURCES): add lib/envblk.c and
34912
	commands/loadenv.c
34913
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise
34914
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise
34915
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise
34916
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise
34917
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise
34918
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise
34919
34920
2009-09-03  Magnus Granberg  <zorry@ume.nu>
34921
34922
	* aclocal.m4: Add grub_CHECK_PIE. It check if the compiler
34923
	include -fPIE in the default specs.
34924
	* configure.ac: Check if pie_possible is yes and add -fno-PIE
34925
	to TARGET_CFLAGS.
34926
34927
2009-09-03  Felix Zielcke  <fzielcke@z-51.de>
34928
34929
	* INSTALL: Note that GNU Bison 2.3 or later is required.
34930
34931
2009-09-03  Colin Watson  <cjwatson@ubuntu.com>
34932
34933
	* kern/i386/pc/startup.S: Fix typo.
34934
34935
2009-09-02  Vladimir Serbinenko  <phcoder@gmail.com>
34936
34937
	* efiemu/loadcore.c (SUFFIX (grub_efiemu_loadcore_load)): Fix style
34938
	according to GCS.
34939
34940
2009-09-02  Colin Watson  <cjwatson@ubuntu.com>
34941
34942
	* docs/grub.texi (Naming convention): Describe one-based partition
34943
	numbering.
34944
	(Device syntax): Likewise.
34945
	(File name syntax): Likewise.
34946
	(Block list syntax): Likewise.
34947
	(Making a GRUB bootable CD-ROM): Talk about grub.cfg rather than
34948
	menu.lst.
34949
	(File name syntax): Likewise.
34950
	(Command-line and menu entry commands): Document acpi, blocklist,
34951
	crc, export, insmod, keystatus, ls, set, and unset commands.
34952
34953
2009-09-02  Colin Watson  <cjwatson@ubuntu.com>
34954
34955
	* commands/keystatus.c (GRUB_MOD_INIT (keystatus)): Adjust summary
34956
	to avoid implying that only one of --shift, --ctrl, or --alt may be
34957
	used.
34958
34959
2009-09-02  Colin Watson  <cjwatson@ubuntu.com>
34960
34961
	* util/grub-probe.c (probe): Test st.st_mode using S_ISREG macro
34962
	rather than comparing against S_IFREG, which will almost never work.
34963
34964
2009-09-01  Vladimir Serbinenko  <phcoder@gmail.com>
34965
34966
	* commands/loadenv.c (check_blocklists): Fix off-by-one error.
34967
	(write_blocklists): Likewise.
34968
34969
2009-09-01  Colin Watson  <cjwatson@ubuntu.com>
34970
34971
	* script/lua/grub_lua.h (fputs): Supply a format string as the first
34972
	argument to grub_printf.
34973
34974
2009-09-01  Felix Zielcke  <fzielcke@z-51.de>
34975
34976
	* genmk.rb: Add quotes around $(TARGET_OBJ2ELF) to cope with
34977
	 non GNU test.
34978
34979
2009-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
34980
34981
	* kern/file.c (grub_file_read): Spelling fix
34982
34983
2009-08-30  Vladimir Serbinenko  <phcoder@gmail.com>
34984
34985
	* loader/i386/bsdXX.c (SUFFIX (grub_freebsd_load_elfmodule)): Fix
34986
	loading of headers in some cases.
34987
1.3.7 by Colin Watson
Import upstream version 1.97~beta1
34988
2009-08-30  Robert Millan  <rmh.grub@aybabtu.com>
34989
34990
	* configure.ac: Bump version to 1.97~beta1.
34991
	* docs/version.texi: Likewise.
34992
34993
2009-08-29  Vladimir Serbinenko  <phcoder@gmail.com>
34994
34995
	* include/grub/i386/xnu.h: Add license header.
34996
	include grub/err.h explicitly.
34997
34998
2009-08-29  Robert Millan  <rmh.grub@aybabtu.com>
34999
35000
	* util/grub.d/10_freebsd.in: Detect `ufs1' and `ufs2' and map them
35001
	to `ufs' in the vfs.root.mountfrom kernel parameter.
35002
35003
2009-08-29  Robert Millan  <rmh.grub@aybabtu.com>
35004
35005
	* term/i386/pc/serial.c: Include `<grub/machine/memory.h>'.
35006
35007
	[GRUB_MACHINE_PCBIOS] (serial_hw_io_addr): Macroify initialization
35008
	value (0x0400 -> GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR).
35009
35010
	[! GRUB_MACHINE_PCBIOS] (GRUB_SERIAL_PORT_NUM): Calculate using
35011
	`ARRAY_SIZE' macro.
35012
35013
2009-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
35014
35015
	* kern/file.c (grub_file_read): Check offset.
35016
	* fs/hfs.c (grub_hfs_read_file): Remove unnecessary offset check.
35017
	* fs/jfs.c (grub_jfs_read_file): Likewise.
35018
	* fs/ntfs.c (grub_ntfs_read): Likewise.
35019
	* fs/reiserfs.c (grub_reiserfs_read): Likewise.
35020
	* fs/minix.c (grub_minix_read_file): Correct offset check.
35021
	* fs/ufs.c (grub_ufs_read_file): Likewise.
35022
35023
2009-08-28  Colin Watson  <cjwatson@ubuntu.com>
35024
35025
	* term/i386/pc/console.c (bios_data_area): Cast
35026
	GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR explicitly.
35027
35028
2009-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
35029
35030
	1-bit optimised blitters.
35031
35032
	* include/grub/fbblit.h (grub_video_fbblit_replace_32bit_1bit): New
35033
	prototype.
35034
	(grub_video_fbblit_replace_24bit_1bit): Likewise.
35035
	(grub_video_fbblit_replace_16bit_1bit): Likewise.
35036
	(grub_video_fbblit_replace_8bit_1bit): Likewise.
35037
	(grub_video_fbblit_blend_XXXA8888_1bit): Likewise.
35038
	(grub_video_fbblit_blend_XXX888_1bit): Likewise.
35039
	(grub_video_fbblit_blend_XXX565_1bit): Likewise.
35040
	* video/fb/fbblit.c (grub_video_fbblit_replace_32bit_1bit): New
35041
	function.
35042
	(grub_video_fbblit_replace_24bit_1bit): Likewise.
35043
	(grub_video_fbblit_replace_16bit_1bit): Likewise.
35044
	(grub_video_fbblit_replace_8bit_1bit): Likewise.
35045
	(grub_video_fbblit_blend_XXXA8888_1bit): Likewise.
35046
	(grub_video_fbblit_blend_XXX888_1bit): Likewise.
35047
	(grub_video_fbblit_blend_XXX565_1bit): Likewise.
35048
	* video/fb/video_fb.c (common_blitter): Use 1-bit optimised blitters
35049
	when possible.
35050
	* video/video.c (grub_video_get_blit_format): Return
35051
	GRUB_VIDEO_BLIT_FORMAT_1BIT_PACKED if bpp = 1.
35052
35053
2009-08-28  Colin Watson  <cjwatson@ubuntu.com>
35054
35055
	* normal/cmdline.c (grub_cmdline_get): Supply a format string as
35056
	the first argument to grub_printf.
35057
35058
2009-08-28  Colin Watson  <cjwatson@ubuntu.com>
35059
2009-08-28  Robert Millan  <rmh.grub@aybabtu.com>
35060
35061
	Add `getkeystatus' terminal method.  Add a new `keystatus' command
35062
	to query it.
35063
35064
	* include/grub/term.h (GRUB_TERM_STATUS_SHIFT,
35065
	GRUB_TERM_STATUS_CTRL, GRUB_TERM_STATUS_ALT): Definitions for
35066
	modifier key bitmasks.
35067
	(struct grub_term_input): Add `getkeystatus' member.
35068
	(grub_getkeystatus): Add prototype.
35069
	* kern/term.c (grub_getkeystatus): New function.
35070
35071
	* include/grub/i386/pc/memory.h
35072
	(GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR): New macro.
35073
	(struct grub_machine_bios_data_area): Define necessary parts of BIOS
35074
	Data Area layout.
35075
	* term/i386/pc/console.c (grub_console_getkeystatus): New function.
35076
	(grub_console_term_input): Set `getkeystatus' member.
35077
	* term/usb_keyboard.c (grub_usb_hid): Macroify HID protocol
35078
	constants.
35079
	(grub_usb_keyboard_getreport): Likewise.
35080
	(grub_usb_keyboard_checkkey): Likewise.
35081
	(grub_usb_keyboard_getkeystatus): New function.
35082
	(grub_usb_keyboard_term): Set `getkeystatus' member.
35083
35084
	* commands/keystatus.c: New file.
35085
	* conf/common.rmk (pkglib_MODULES): Add keystatus.mod.
35086
	(keystatus_mod_SOURCES): New variable.
35087
	(keystatus_mod_CFLAGS): Likewise.
35088
	(keystatus_mod_LDFLAGS): Likewise.
35089
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add
35090
	commands/keystatus.c.
35091
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
35092
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35093
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
35094
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35095
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35096
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
35097
35098
2009-08-28  Vladimir Serbinenko  <phcoder@gmail.com>
35099
35100
	Split befs.mod and afs.mod into *_be.mod and *.mod
35101
35102
	* conf/common.rmk (grub_probe_SOURCES): Add afs_be.c and befs_be.c.
35103
	(grub_fstest_SOURCES): Likewise.
35104
	(pkglib_MODULES): Add afs_be.mod and befs_be.mod.
35105
	(afs_be_mod_SOURCES): New variable.
35106
	(afs_be_mod_CFLAGS): Likewise.
35107
	(afs_be_mod_LDFLAGS): Likewise.
35108
	(befs_be_mod_SOURCES): Likewise.
35109
	(befs_be_mod_CFLAGS): Likewise.
35110
	(befs_be_mod_LDFLAGS): Likewise.
35111
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add afs_be.c and befs_be.c.
35112
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
35113
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35114
	* conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
35115
	(grub_emu_SOURCES): Likewise.
35116
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35117
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35118
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
35119
	* fs/afs_be.c: New file.
35120
	* fs/befs_be.c: New file.
35121
	* fs/afs.c (GRUB_AFS_FSNAME_SUFFIX): New definition.
35122
	(GRUB_AFS_FSNAME): Use GRUB_AFS_FSNAME_SUFFIX.
35123
	(U16): Replaced with ...
35124
	(grub_afs_to_cpu16): ...this. All users updated.
35125
	(U32): Replaced with ...
35126
	(grub_afs_to_cpu32): ...this. All users updated.
35127
	(U64): Replaced with ...
35128
	(grub_afs_to_cpu64): ...this. All users updated.
35129
	(GRUB_AFS_BO_LITTLE_ENDIAN): Remove.
35130
	(GRUB_AFS_BO_BIG_ENDIAN): Likewise.
1.2.7 by Felix Zielcke
Import upstream version 1.97~beta3
35131
	(grub_afs_validate_sblock): Check only one endianness.
1.3.7 by Colin Watson
Import upstream version 1.97~beta1
35132
	(GRUB_MOD_INIT (befs)) [MODE_BIGENDIAN && MODE_BFS]: Rename to ..
35133
	(GRUB_MOD_INIT (befs_be)) [MODE_BIGENDIAN && MODE_BFS]: ... this.
35134
	(GRUB_MOD_INIT (afs)) [MODE_BIGENDIAN && !MODE_BFS]: Rename to ..
35135
	(GRUB_MOD_INIT (afs_be)) [MODE_BIGENDIAN && !MODE_BFS]: ... this.
35136
	(GRUB_MOD_FINI (befs)) [MODE_BIGENDIAN && MODE_BFS]: Rename to ..
35137
	(GRUB_MOD_FINI (befs_be)) [MODE_BIGENDIAN && MODE_BFS]: ... this.
35138
	(GRUB_MOD_FINI (afs)) [MODE_BIGENDIAN && !MODE_BFS]: Rename to ..
35139
	(GRUB_MOD_FINI (afs_be)) [MODE_BIGENDIAN && !MODE_BFS]: ... this.
35140
35141
2009-08-26  Bean  <bean123ch@gmail.com>
35142
35143
	* fs/xfs.c (GRUB_XFS_INO_INOINAG): Replace 1L with 1LL to support
35144
	64-bit number.
35145
	(GRUB_XFS_FSB_TO_BLOCK): Likewise.
35146
	(grub_xfs_inode_block): Change return type to grub_uint64_t.
35147
	(grub_xfs_read_inode): Change type of block to grub_uint64_t.
35148
1.3.6 by Colin Watson
Import upstream version 1.96+20090826
35149
2009-08-25  Vladimir Serbinenko  <phcoder@gmail.com>
35150
35151
	NetBSD memory map support.
35152
35153
	* include/grub/i386/bsd.h (NETBSD_BTINFO_MEMMAP): New definition.
35154
	(grub_netbsd_btinfo_mmap_header): New structure.
35155
	(grub_netbsd_btinfo_mmap_entry): Likewise.
35156
	* loader/i386/bsd.c (grub_netbsd_boot): Pass memory map.
35157
35158
2009-08-25  Vladimir Serbinenko  <phcoder@gmail.com>
35159
35160
	Enable bsd.mod on coreboot.
35161
35162
	* conf/i386-coreboot.rmk (pkglib_MODULES): Add bsd.mod.
35163
	(bsd_mod_SOURCES): New variable.
35164
	(bsd_mod_CFLAGS): Likewise.
35165
	(bsd_mod_LDFLAGS): Likewise.
35166
	(bsd_mod_ASFLAGS): Likewise.
35167
	* loader/i386/bsd.c [!GRUB_MACHINE_PCBIOS]: Fix includes.
35168
	(grub_bsd_get_device) [!GRUB_MACHINE_PCBIOS]: Set *biosdev to 0xff.
35169
35170
2009-08-25  Vladimir Serbinenko  <phcoder@gmail.com>
35171
35172
	Cleanup NetBSD root support.
35173
35174
	* loader/i386/bsd.c (grub_netbsd_boot): Remove call to
35175
	grub_bsd_get_device.
35176
	Fix typo.
35177
35178
2009-08-25  Felix Zielcke  <fzielcke@z-51.de>
35179
35180
	* util/grub.d/00_header.in: Move check for the video backend of
35181
	gfxterm from here ...
35182
	* util/grub-mkconfig.in: ... to here.  Enable gfxterm if there's
35183
	a suitable video backend.
35184
35185
2009-08-25  Vladimir Serbinenko  <phcoder@gmail.com>
35186
35187
	Fix breakage in grub-setup.
35188
35189
	* util/i386/pc/grub-setup.c (setup): Use "part_msdos" instead of
35190
	"msdos_partition_map".
35191
35192
2009-08-25  Vladimir Serbinenko  <phcoder@gmail.com>
35193
35194
	Fix breakage in normal/auth.c.
35195
35196
	* normal/auth.c (grub_iswordseparator): New function.
35197
35198
2009-08-25  Vladimir Serbinenko  <phcoder@gmail.com>
35199
35200
	Authentication support.
35201
35202
	* commands/password.c: New file.
35203
	* conf/common.rmk (pkglib_MODULES): Add password.mod.
35204
	(password_mod_SOURCES): New variable.
35205
	(password_mod_CFLAGS): Likewise.
35206
	(password_mod_LDFLAGS): Likewise.
35207
	(normal_mod_SOURCES): Add normal/auth.c.
35208
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add commands/password.c and
35209
	normal/auth.c.
35210
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
35211
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35212
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
35213
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35214
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35215
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
35216
	* include/grub/auth.h: New file.
35217
	* include/grub/err.h (grub_err_t): New enum value
35218
	GRUB_ERR_ACCESS_DENIED.
35219
	* include/grub/menu.h (grub_menu_entry): New fields 'restricted' and
35220
	'users'.
35221
	* include/grub/normal.h (grub_cmdline_get): New argument 'history'.
35222
	* normal/cmdline.c (grub_cmdline_get): New argument 'history'. All
35223
	users updated.
35224
	* normal/auth.c: New file.
35225
	* normal/main.c (grub_normal_add_menu_entry): Handle --users option.
35226
	(grub_cmdline_run): Don't allow to go to command line without
35227
	authentication.
35228
	* normal/menu.c (grub_menu_execute_entry): Handle restricted entries.
35229
	* normal/menu_entry.c (grub_menu_entry_run): Don't allow editing
35230
	menuentry without superuser rights.
35231
	* normal/menu_viewer.c (grub_menu_viewer_show_menu): Don't exit if
35232
	user isn't a superuser.
35233
35234
2009-08-24  Vladimir Serbinenko  <phcoder@gmail.com>
35235
35236
	Save space by inlining misc.c functions.
35237
35238
	* kern/misc.c (grub_iswordseparator): Made static.
35239
	* kern/misc.c (grub_strcat): Moved from here ...
35240
	* include/grub/misc.h (grub_strcat): ... here. Inlined.
35241
	* kern/misc.c (grub_strncat): Moved from here ...
35242
	* include/grub/misc.h (grub_strncat): ... here. Inlined.
35243
	* kern/misc.c (grub_strcasecmp): Moved from here ...
35244
	* include/grub/misc.h (grub_strcasecmp): ... here. Inlined.
35245
	* kern/misc.c (grub_strncasecmp): Moved from here ...
35246
	* include/grub/misc.h (grub_strncasecmp): ... here. Inlined.
35247
	* kern/misc.c (grub_isalpha): Moved from here ...
35248
	* include/grub/misc.h (grub_isalpha): ... here. Inlined.
35249
	* kern/misc.c (grub_isdigit): Moved from here ...
35250
	* include/grub/misc.h (grub_isdigit): ... here. Inlined.
35251
	* kern/misc.c (grub_isgraph): Moved from here ...
35252
	* include/grub/misc.h (grub_isgraph): ... here. Inlined.
35253
	* kern/misc.c (grub_tolower): Moved from here ...
35254
	* include/grub/misc.h (grub_tolower): ... here. Inlined.
35255
35256
2009-08-24  Vladimir Serbinenko  <phcoder@gmail.com>
35257
35258
	* script/sh/function.c (grub_script_function_find): Cut error message
35259
	not to flood terminal.
35260
	* script/sh/lexer.c (grub_script_yylex): Remove command line length
35261
	limit.
35262
	* script/sh/script.c (grub_script_arg_add): Duplicate string.
35263
35264
2009-08-24  Colin Watson  <cjwatson@ubuntu.com>
35265
35266
	* term/usb_keyboard.c (grub_usb_keyboard_getreport): Make
35267
	`report' grub_uint8_t *.
35268
	(grub_usb_keyboard_checkkey): Make `data' elements grub_uint8_t.
35269
	Use a 50-millisecond timeout rather than just repeating
35270
	grub_usb_keyboard_getreport 50 times.
35271
	(grub_usb_keyboard_getkey): Make `data' elements grub_uint8_t.
35272
35273
2009-08-24  Vladimir Serbinenko  <phcoder@gmail.com>
35274
35275
	Rename *_partition_map to part_*
35276
35277
	* partmap/acorn.c (grub_acorn_partition_map): Set name to 'part_acorn'.
35278
	* partmap/amiga.c (grub_amiga_partition_map): Set name to 'part_amiga'.
35279
	* partmap/apple.c (grub_apple_partition_map): Set name to 'part_apple'.
35280
	* partmap/gpt.c (grub_gpt_partition_map): Set name to 'part_gpt'.
35281
	All users updated.
35282
	* partmap/msdos.c (grub_msdos_partition_map): Set name to 'part_msdos'.
35283
	All users updated.
35284
	* partmap/sun.c (grub_sun_partition_map): Set name to 'part_sun'.
35285
	* util/grub-probe.c (probe_partmap): Don't transform partition name
35286
	to get module name.
35287
35288
2009-08-24  Vladimir Serbinenko  <phcoder@gmail.com>
35289
35290
	Fix OpenBSD and NetBSD support.
35291
35292
	* include/grub/i386/bsd.h (GRUB_BSD_TEMP_BUFFER): Change to resolve
35293
	memory address conflict.
35294
	(OPENBSD_MMAP_ACPI): New definition.
35295
	(OPENBSD_MMAP_NVS): Likewise.
35296
	* loader/i386/bsd.c (grub_openbsd_boot): Support OPENBSD_MMAP_ACPI
35297
	and OPENBSD_MMAP_NVS.
35298
	Add memory map terminator
35299
	Explicit cast when calling grub_unix_real_boot.
1.2.7 by Felix Zielcke
Import upstream version 1.97~beta3
35300
	(grub_netbsd_boot): Explicit cast when calling grub_unix_real_boot.
1.3.6 by Colin Watson
Import upstream version 1.96+20090826
35301
35302
2009-08-24  Vladimir Serbinenko  <phcoder@gmail.com>
35303
35304
	Let user specify NetBSD root device.
35305
35306
	* loader/i386/bsd.c (netbsd_root): New variable.
35307
	(netbsd_opts): New option 'root'.
35308
	(NETBSD_ROOT_ARG): New macro.
35309
	(grub_netbsd_boot): Use 'netbsd_root'.
35310
	(grub_bsd_unload): Free 'netbsd_root'.
35311
	(grub_cmd_netbsd): Fill 'netbsd_root'.
35312
35313
2009-08-24  Vladimir Serbinenko  <phcoder@gmail.com>
35314
35315
	Support for 64-bit NetBSD.
35316
35317
	* loader/i386/bsd.c (grub_bsd_load_elf): Apply correct mask to entry
35318
	point when booting non-FreeBSD.
35319
35320
2009-08-24  Vladimir Serbinenko  <phcoder@gmail.com>
35321
35322
	Support --no-smp and --no-acpi for NetBSD.
35323
35324
	* include/grub/i386/bsd.h (NETBSD_AB_NOSMP): New definition.
35325
	(NETBSD_AB_NOACPI): Likewise.
35326
	* loader/i386/bsd.c (netbsd_opts): New entries no-smp and no-acpi.
35327
	(netbsd_flags): Add NETBSD_AB_NOSMP, NETBSD_AB_NOACPI.
35328
35329
2009-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
35330
35331
	* fs/hfsplus.c (grub_hfsplus_mount): Don't ignore grub_hfsplus_read_file
35332
	errors.
35333
	(grub_hfsplus_btree_iterate_node): Don't ignore grub_hfsplus_read_file
35334
	errors. Call grub_error when needed.
35335
35336
2009-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
35337
35338
	* commands/search.c (search_fs): Try searching without autoload first.
35339
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Load
35340
	filesystem module explicitly for faster booting.
35341
35342
2009-08-23  Colin Watson  <cjwatson@ubuntu.com>
35343
35344
	* util/grub-mkconfig.in: Export GRUB_DISABLE_OS_PROBER.
35345
35346
2009-08-23  Colin Watson  <cjwatson@ubuntu.com>
35347
35348
	* util/grub.d/30_os-prober.in: Disable os-prober if
35349
	`GRUB_DISABLE_OS_PROBER' was set to true.
35350
35351
2009-08-23  Robert Millan  <rmh.grub@aybabtu.com>
35352
35353
	* partmap/pc.c: Rename to ...
35354
	* partmap/msdos.c: ... this.  Update all users.
35355
	(grub_pc_partition_map): Rename to ...
35356
	(grub_msdos_partition_map): ... this.  Update all users.
35357
35358
	* parttool/pcpart.c: Rename to ...
35359
	* parttool/msdospart.c: ... this.  Update all users.
35360
35361
	* include/grub/pc_partition.h: Rename to ...
35362
	* include/grub/msdos_partition.h: ... this.  Update all users.
35363
	(grub_pc_partition_bsd_entry): Rename to ...
35364
	(grub_msdos_partition_bsd_entry): ... this.  Update all users.
35365
	(grub_pc_partition_disk_label): Rename to ...
35366
	(grub_msdos_partition_disk_label): ... this.  Update all users.
35367
	(grub_pc_partition_entry): Rename to ...
35368
	(grub_msdos_partition_entry): ... this.  Update all users.
35369
	(grub_pc_partition_mbr): Rename to ...
35370
	(grub_msdos_partition_mbr): ... this.  Update all users.
35371
	(grub_pc_partition): Rename to ...
35372
	(grub_msdos_partition): ... this.  Update all users.
35373
	(grub_pc_partition_is_empty): Rename to ...
35374
	(grub_msdos_partition_is_empty): ... this.  Update all users.
35375
	(grub_pc_partition_is_extended): Rename to ...
35376
	(grub_msdos_partition_is_extended): ... this.  Update all users.
35377
	(grub_pc_partition_is_bsd): Rename to ...
35378
	(grub_msdos_partition_is_bsd): ... this.  Update all users.
35379
35380
	* conf/common.rmk (amiga_mod_SOURCES, amiga_mod_CFLAGS)
35381
	(amiga_mod_LDFLAGS, apple_mod_SOURCES, apple_mod_CFLAGS)
35382
	(apple_mod_LDFLAGS, msdos_mod_SOURCES, msdos_mod_CFLAGS)
35383
	(msdos_mod_LDFLAGS, sun_mod_SOURCES, sun_mod_CFLAGS)
35384
	(sun_mod_LDFLAGS, acorn_mod_SOURCES, acorn_mod_CFLAGS)
35385
	(acorn_mod_LDFLAGS, gpt_mod_SOURCES, gpt_mod_CFLAGS)
35386
	(gpt_mod_LDFLAGS): Rename to ...
35387
	(part_amiga_mod_SOURCES, part_amiga_mod_CFLAGS, part_amiga_mod_LDFLAGS)
35388
	(part_apple_mod_SOURCES, part_apple_mod_CFLAGS, part_apple_mod_LDFLAGS)
35389
	(part_msdos_mod_SOURCES, part_msdos_mod_CFLAGS, part_msdos_mod_LDFLAGS)
35390
	(part_sun_mod_SOURCES, part_sun_mod_CFLAGS, part_sun_mod_LDFLAGS)
35391
	(part_acorn_mod_SOURCES, part_acorn_mod_CFLAGS, part_acorn_mod_LDFLAGS)
35392
	(part_gpt_mod_SOURCES, part_gpt_mod_CFLAGS)
35393
	(part_gpt_mod_LDFLAGS): ... this.
35394
	(pkglib_MODULES): Prefix partition modules with `part_'.  Rename
35395
	`pcpart.mod' to `msdospart.mod'.
35396
	(pcpart_mod_SOURCES, pcpart_mod_CFLAGS, pcpart_mod_LDFLAGS): Rename
35397
	to ...
35398
	(msdospart_mod_SOURCES, msdospart_mod_CFLAGS)
35399
	(msdospart_mod_LDFLAGS): ... this.
35400
35401
2009-08-23  Vladimir Serbinenko  <phcoder@gmail.com>
35402
35403
	* loader/i386/bsd.c (freebsd_opts): Rewritten to use extcmd.
35404
	(openbsd_opts): Likewise.
35405
	(netbsd_opts): Likewise.
35406
	(freebsd_flags): Added 0 terminator.
35407
	(openbsd_flags): Likewise.
35408
	(netbsd_flags): Likewise.
35409
	(grub_bsd_parse_flags): Rewritten to use extcmd. All users updated.
35410
	(grub_cmd_freebsd): Transformed into extended command.
35411
	(grub_cmd_openbsd): Likewise.
35412
	(grub_cmd_netbsd): Likewise.
35413
	(cmd_freebsd): Changed type to grub_extcmd_t.
35414
	(cmd_openbsd): Likewise.
35415
	(cmd_netbsd): Likewise.
35416
	(GRUB_MOD_INIT (bsd)): Register grub_cmd_freebsd, grub_cmd_netbsd and
35417
	grub_cmd_openbsd as extended commands.
35418
	(GRUB_MOD_FINI (bsd)): Use grub_unregister_extcmd for cmd_freebsd,
35419
	cmd_netbsd and cmd_openbsd
35420
35421
2009-08-22  Vladimir Serbinenko  <phcoder@gmail.com>
35422
35423
	* commands/xnu_uuid.c (transform): Use grub_memcpy instead of memcpy.
35424
35425
2009-08-21  Pavel Roskin  <proski@gnu.org>
35426
35427
	* Makefile.in (install-local): When checking if a file is in the
35428
	build directory, use "test -e" to detect symlinks.
35429
35430
	* Makefile.in (install-local): Remove all files in
35431
	$(DESTDIR)$(pkglibdir) before installing new files there.
35432
35433
2009-08-18  Felix Zielcke  <fzielcke@z-51.de>
35434
35435
	* util/powerpc/ieee1275/grub-mkrescue.in (grub_mkimage): Use
35436
	grub-mkelfimage.
35437
35438
2009-08-18  Felix Zielcke  <fzielcke@z-51.de>
35439
35440
	* util/grub-mkconfig.in: Don't use gfxterm by default if not
35441
	explicitly specified by the user.
35442
35443
2009-08-18  Pavel Roskin  <proski@gnu.org>
35444
35445
	* include/grub/fbfill.h (struct grub_video_fbrender_target): Use
35446
	grub_uint8_t pointer for data.
35447
	* include/grub/fbutil.h (struct grub_video_fbblit_info):
35448
	Likewise.
35449
	* video/fb/fbutil.c: Remove unnecessary casts.
35450
35451
2009-08-17  Michal Suchanek  <hramrach@centrum.cz>
35452
35453
	VBE cleanup.
35454
35455
	* video/i386/pc/vbe.c (vbe_mode_in_use): Removed (duplicate).
35456
	(grub_vbe_set_video_mode): Save active mode info
35457
	only after setting the mode.
35458
	(grub_video_vbe_setup): Call 'grub_vbe_set_video_mode' with NULL as
35459
	second argument.
35460
35461
2009-08-17  Michal Suchanek  <hramrach@centrum.cz>
35462
35463
	Rename variables for clarity.
35464
35465
	* video/i386/pc/vbe.c (active_mode_info): Renamed to ...
35466
	(active_vbe_mode_info): ... this. All users updated.
35467
	(framebuffer): Rename 'active_mode' to 'active_vbe_mode'.
35468
	All users updated.
35469
	(initial_mode): Rename to ...
35470
	(initial_vbe_mode): ... this. All users updated.
35471
	(mode_in_use): Rename to ..
35472
	(vbe_mode_in_use): ... this. All users updated.
35473
	(mode_list): Rename to ..
35474
	(vbe_mode_list): ... this. All users updated.
35475
	(grub_vbe_set_video_mode): Rename 'mode' to 'vbe_mode', 'mode_info' to
35476
	'vbe_mode_info' and 'old_mode' to 'old_vbe_mode'.
35477
	(grub_video_vbe_init): Rename 'rm_mode_list' to 'rm_vbe_mode_list' and
35478
	'mode_list_size' to 'vbe_mode_list_size'.
35479
	(grub_video_vbe_setup): Rename 'mode_info' to 'vbe_mode_info',
35480
	'best_mode_info' to 'best_vbe_mode_info' and
35481
	'best_mode' to 'best_vbe_mode'
35482
35483
2009-08-17  Michal Suchanek  <hramrach@centrum.cz>
35484
35485
	Remove duplicate grub_video_fb_get_video_ptr.
35486
35487
	* include/grub/fbutil.h (get_data_ptr): Rename to ...
35488
	(grub_video_fb_get_video_ptr): ... this.
35489
	* include/grub/video_fb.h (grub_video_fb_get_video_ptr): Removed.
35490
	* video/fb/fbutil.c: Add comment about addressing.
35491
	(get_data_ptr): Rename to ...
35492
	(grub_video_fb_get_video_ptr): ... this. All users updated.
35493
	* video/fb/video_fb.c (grub_video_fb_get_video_ptr): Remove.
35494
35495
2009-08-17  Robert Millan  <rmh.grub@aybabtu.com>
35496
35497
	* fs/fat.c (grub_fat_read_data): Remove `#if 0' braces around the
35498
	grub_dprintf() that was just added.
35499
35500
2009-08-17  Robert Millan  <rmh.grub@aybabtu.com>
35501
35502
	* loader/i386/linux.c (GRUB_ASSUME_LINUX_HAS_FB_SUPPORT)
35503
	(DEFAULT_VIDEO_MODE): Remove macros.
35504
	(grub_linux_boot): Remove assumption that Linux has FB support,
35505
	and use "text" as default video mode.
35506
35507
2009-08-15  Vladimir Serbinenko  <phcoder@gmail.com>
35508
35509
	* fs/affs.c (grub_affs_read_symlink): Change leftover grub_printf into
35510
	grub_dprintf.
35511
	* fs/fat.c (grub_fat_read_data): Likewise.
35512
35513
2009-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
35514
35515
	* loader/i386/multiboot.c (grub_multiboot): Don't pass filename to
35516
	payload.
35517
	(grub_module): Likewise.
35518
35519
2009-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
35520
35521
	* loader/i386/multiboot.c (grub_multiboot_unload): Don't free mbi and
35522
	mbi->cmdline but free playground.
35523
35524
2009-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
35525
35526
	Handle group offset on UFS1.
35527
35528
	* fs/ufs.c (grub_ufs_sblock): New field 'cylg_mask'.
35529
	(grub_ufs_read_inode) [!MODE_UFS2]: handle cylg_offset and cylg_mask.
35530
35531
2009-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
35532
35533
	Split ufs.mod into ufs1.mod and ufs2.mod.
35534
35535
	* conf/common.rmk (grub_probe_SOURCES): Add fs/ufs2.c.
35536
	(grub_fstest_SOURCES): Likewise.
35537
	(pkglib_MODULES): Remove ufs.mod. Add ufs1.mod and ufs2.mod.
35538
	(ufs_mod_SOURCES): Remove.
35539
	(ufs_mod_CFLAGS): Likewise.
35540
	(ufs_mod_LDFLAGS): Likewise.
35541
	(ufs1_mod_SOURCES): New variable.
35542
	(ufs1_mod_CFLAGS): Likewise.
35543
	(ufs1_mod_LDFLAGS): Likewise.
35544
	(ufs2_mod_SOURCES): New variable.
35545
	(ufs2_mod_CFLAGS): Likewise.
35546
	(ufs2_mod_LDFLAGS): Likewise.
35547
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add fs/ufs2.c.
35548
	* conf/i386-efi.rmk (util/i386/efi/grub-mkimage.c_DEPENDENCIES):
35549
	Likewise.
35550
	(grub_emu_SOURCES): Likewise.
35551
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35552
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
35553
	(grub_setup_SOURCES): Likewise.
35554
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35555
	* conf/sparc64.rmk (grub_emu_SOURCES): Likewise.
35556
	(grub_setup_SOURCES): Likewise.
35557
	* conf/x86_64-efi.rmk (util/i386/efi/grub-mkimage.c_DEPENDENCIES):
35558
	Likewise.
35559
	* fs/ufs2.c: New file.
35560
	* fs/ufs.c: Separate UFS1 from UFS2 by using preprocessor.
35561
35562
2009-08-14  Vladimir Serbinenko  <phcoder@gmail.com>
35563
35564
	Framebuffer split.
35565
35566
	* commands/i386/pc/vbetest.c (grub_cmd_vbetest): Restore video
35567
	subsystem at the end.
35568
	* conf/common.rmk (pkglib_MODULES): Add video_fb.mod.
35569
	(video_fb_mod_SOURCES): New variable.
35570
	(video_fb_mod_CFLAGS): Likewise.
35571
	(video_fb_mod_LDFLAGS): Likewise.
35572
	* conf/i386-pc.rmk (vbe_mod_SOURCES): Remove video/i386/pc/vbeblit.c,
35573
	video/i386/pc/vbefill.c and video/i386/pc/vbeutil.c.
35574
	* video/i386/pc/vbeblit.c: Moved from here ...
35575
	* video/fb/fbblit.c: ..here. Replaced 'vbe' with 'fb'.
35576
	* video/i386/pc/vbefill.c: Moved from here ...
35577
	* video/fb/fbfill.c: ..here. Replaced 'vbe' with 'fb'.
35578
	* video/i386/pc/vbeutil.c: Moved from here ...
35579
	* video/fb/fbutil.c: ..here. Replaced 'vbe' with 'fb'.
35580
	* include/grub/i386/pc/vbeblit.h: Moved from here ...
35581
	* include/grub/fbblit.h: ... here. Replaced 'vbe' with 'fb'.
35582
	* include/grub/i386/pc/vbefill.h: Moved from here ...
35583
	* include/grub/fbfill.h: ... here. Replaced 'vbe' with 'fb'.
35584
	* include/grub/i386/pc/vbeutil.h: Moved from here ...
35585
	* include/grub/fbutil.h: ... here. Replaced 'vbe' with 'fb'.
35586
	* include/grub/i386/pc/vbe.h: Moved framebuffer part ...
35587
	* include/grub/video_fb.h: ... here. Replaced 'vbe' with 'fb'.
35588
	* include/grub/video.h (GRUB_VIDEO_RENDER_TARGET_FRONT_BUFFER): Removed.
35589
	(GRUB_VIDEO_RENDER_TARGET_BACK_BUFFER): Likewise.
35590
	(grub_video_adapter): Added 'get_info_and_fini'.
35591
	(grub_video_get_info_and_fini): New prototype.
35592
	(grub_video_set_mode): make modestring const char *.
35593
	* loader/i386/linux.c (grub_linux_setup_video): Use
35594
	grub_video_get_info_and_fini.
35595
	(grub_linux_boot): Move modesetting just before booting.
35596
	* loader/i386/pc/xnu.c (grub_xnu_set_video): Use
35597
	grub_video_get_info_and_fini.
35598
	* video/i386/pc/vbe.c: Moved framebuffer part ...
35599
	* video/fb/video_fb.c: ... here. Replaced 'vbe' with 'fb'.
35600
	* video/i386/pc/vbe.c (grub_vbe_set_video_mode): Use
35601
	grub_video_fbstd_colors and grub_video_fb_set_palette.
35602
	(grub_video_vbe_init): Clear 'framebuffer' variable and use
35603
	grub_video_fb_init.
35604
	(grub_video_vbe_fini): Use grub_video_fb_fini.
35605
	(grub_video_vbe_setup): Use framebuffer.render_target instead of
35606
	render_target and use grub_video_fb_set_active_render_target and
35607
	grub_video_fb_set_palette.
35608
	(grub_video_vbe_set_palette): Use grub_video_fb_set_palette.
35609
	(grub_video_vbe_set_viewport): Use grub_video_fb_set_viewport.
35610
	(grub_video_vbe_adapter): Use framebuffer.
35611
	* video/video.c (grub_video_get_info_and_fini): New function.
35612
	(grub_video_set_mode): Make modestring const char *.
35613
	(GRUB_MOD_INIT(video_video)): Don't set variables to 0 since these
35614
	values are already initialised.
35615
35616
2009-08-14  Pavel Roskin  <proski@gnu.org>
35617
35618
	* boot/i386/pc/cdboot.S: Use LOCAL for local labels.  Eliminate
35619
	ABS and APPLE_CC.
35620
	* boot/i386/pc/diskboot.S: Likewise.
35621
	* boot/i386/pc/lnxboot.S: Likewise.  Hardcode the number of code
35622
	sectors allow compilation on MacOSX.
35623
	* conf/i386-pc.rmk: Enable unconditional compilation of
35624
	lnxboot.img.
35625
35626
2009-08-13  Colin Watson  <cjwatson@ubuntu.com>
35627
35628
	* util/grub-mkconfig.in: Export GRUB_HIDDEN_TIMEOUT.
35629
	* util/grub.d/00_header.in: Enter interruptible sleep if
35630
	GRUB_HIDDEN_TIMEOUT is set.
35631
35632
2009-08-13  Yves Blusseau  <blusseau@zetam.org>
35633
35634
	* include/grub/symbol.h: Add the LOCAL macro.
35635
	* boot/i386/pc/boot.S: Use the LOCAL macro for all labels
35636
	starting with "L_".
35637
35638
2009-08-13  Pavel Roskin  <proski@gnu.org>
35639
35640
	* boot/i386/pc/boot.S: Remove ABS macro, it's not required by
35641
	any modern compilers we support.
35642
35643
	* boot/i386/pc/boot.S: Remove all code dependent on APPLE_CC.
35644
	Use local labels starting with "L_" so that Apple assembler
35645
	knows they are local.
35646
17.2.14 by Robert Millan, Felix Zielcke, Robert Millan
* New SVN snapshot.
35647
2009-08-10  Robert Millan  <rmh.grub@aybabtu.com>
35648
35649
	* include/grub/i386/bsd.h (KERNEL_TYPE_NONE, KERNEL_TYPE_FREEBSD)
35650
	(KERNEL_TYPE_OPENBSD, KERNEL_TYPE_NETBSD): Convert to ...
35651
	(bsd_kernel_types): ... this enum.
35652
35653
	* loader/i386/bsd.c (grub_cmd_freebsd_loadenv, grub_cmd_freebsd_module)
35654
	(grub_cmd_freebsd_module_elf): Abort with "You need to load the
35655
	kernel first." when `kernel_type' is set to KERNEL_TYPE_NONE.
35656
35657
	(grub_bsd_load_aout, grub_bsd_load, grub_cmd_freebsd_loadenv)
35658
	(grub_cmd_freebsd_module, grub_cmd_freebsd_module_elf)
35659
	(GRUB_MOD_INIT (bsd)): Fix capitalization in a few error
35660
	messages.
35661
35662
2009-08-08  Robert Millan  <rmh.grub@aybabtu.com>
35663
35664
	* util/grub-dumpdevtree: Moved from here ...
35665
	* util/i386/efi/grub-dumpdevtree: ... to here.
35666
	(hexify): New function.  Converts a string to its hex version.
35667
	Generate hex versions of "efi" and "device-properties" by calling
35668
	hexify() on the ASCII strings rather than by hardcoding numbers.
35669
35670
2009-08-08  Robert Millan  <rmh.grub@aybabtu.com>
35671
35672
	* fs/jfs.c: Update copyright year.
35673
35674
2009-08-08  Felix Zielcke  <fzielcke@z-51.de>
35675
35676
	* util/grub.d/00_header.in: Fix a comment.
35677
	* util/grub.d/10_linux.in: Likewise.
35678
	* util/grub.d/10_windows.in: Likewise.
35679
	* util/grub.d/10_hurd.in: Likewise.
35680
35681
2009-08-08  Felix Zielcke  <fzielcke@z-51.de>
35682
35683
	* util/grub-mkconfig.in: Allow the user to specify the used font
35684
	with GRUB_FONT.
35685
35686
2009-08-08  Pavel Roskin  <proski@gnu.org>
35687
35688
	* include/grub/powerpc/libgcc.h: Export __ashrdi3() if
35689
	available, xfs.mod needs it now.
35690
35691
	* util/grub-mkconfig_lib.in (version_test_numeric): Don't use
35692
	the "g" modifier in sed when the intention is to strip something
35693
	once.  This fixes comparison of kernels with multiple dashes.
35694
35695
	* util/grub-mkconfig.in: Define datarootdir, datadir may depend
35696
	on it.  Add missing space before closing bracket.  Fix
35697
	misleading formatting.
35698
35699
2009-08-07  Robert Millan  <rmh.grub@aybabtu.com>
35700
35701
	* docs/grub.texi: Major overhaul.  Remove all sections that are
35702
	specific to GRUB Legacy, or mostly composed of Legacy-specific
35703
	information.
35704
35705
2009-08-07  Robert Millan  <rmh.grub@aybabtu.com>
35706
35707
	* docs/version.texi: New file.  Provides version information for
35708
	grub.texi.
35709
35710
2009-08-07  Robert Millan  <rmh.grub@aybabtu.com>
35711
35712
	* docs/grub.texi: Update CVS information to SVN.
35713
	Replace outdated "GRUB 2 will include" phrase with "GRUB 2 includes".
35714
35715
2009-08-07  Felix Zielcke  <fzielcke@z-51.de>
35716
35717
	* util/grub-mkconfig.in: Remove a wrong `fi'.
35718
35719
2009-08-07  Felix Zielcke  <fzielcke@z-51.de>
35720
35721
	* fs/uuid.c (grub_jfs_superblock): New fields unused2 and uuid.
35722
	(grub_jfs_uuid): New function.
35723
	(grub_jfs_fs): Set uuid field to grub_jfs_uuid.
35724
35725
2009-08-07  Felix Zielcke  <fzielcke@z-51.de>
35726
35727
	* util/grub-mkconfig_lib.in (font_path): Move the functionality
35728
	of it to ...
35729
	* util/grub-mkconfig.in: ... here.  Prefer unicode.pf2 and
35730
	unifont.pf2 over ascii.pf2.  Export LANG=C in case ascii.pf2 gets used.
35731
35732
2009-08-07  Robert Millan  <rmh.grub@aybabtu.com>
35733
35734
	* util/grub.d/10_linux.in (test_numeric): Moved from here ...
35735
	* util/grub-mkconfig_lib.in (version_test_numeric): ... to here.
35736
	Update all users.
35737
35738
	* util/grub.d/10_linux.in (test_gt): Strip any basename prefix,
35739
	not just "vmlinu[zx]".
35740
	Moved from here ...
35741
	* util/grub-mkconfig_lib.in (version_test_gt): ... to here.  Update
35742
	all users.
35743
35744
	* util/grub.d/10_linux.in (find_latest): Moved from here ...
35745
	* util/grub-mkconfig_lib.in (version_find_latest): ... to here.  Update
35746
	all users.
35747
35748
2009-08-07  Robert Millan  <rmh.grub@aybabtu.com>
35749
35750
	* util/grub.d/10_freebsd.in: Use an absolute device path for
35751
	`vfs.root.mountfrom'.  Set `vfs.root.mountfrom.options=rw'.
35752
35753
2009-08-06  Felix Zielcke  <fzielcke@z-51.de>
35754
35755
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Fix
35756
	handling of multiple abstraction modules.
35757
35758
2009-08-04  Robert Millan  <rmh.grub@aybabtu.com>
35759
35760
	Fix a bug resulting in black screen when loading Linux using a
35761
	packed video mode.
35762
35763
	* kern/i386/pc/startup.S (grub_vbe_bios_getset_dac_palette_width): New
35764
	function.
35765
35766
	* include/grub/i386/pc/vbe.h (GRUB_VBE_CAPABILITY_DACWIDTH): New macro.
35767
	(grub_vbe_bios_getset_dac_palette_width): New function.
35768
	(grub_vbe_bios_get_dac_palette_width)
35769
	(grub_vbe_bios_set_dac_palette_width): New macros (act as wrappers for
35770
	grub_vbe_bios_getset_dac_palette_width()).
35771
35772
	* video/i386/pc/vbe.c (grub_vbe_probe): Use `GRUB_VBE_STATUS_OK' to
35773
	check for return status.
35774
	(grub_vbe_get_video_mode_info): When getting information for a packed
35775
	mode (<= 8 bpp), obtain DAC palette width using
35776
	grub_vbe_bios_getset_dac_palette_width(), and use that for initializing
35777
	{red,green,blue}_mark_size.
35778
35779
2009-08-04  Felix Zielcke  <fzielcke@z-51.de>
35780
35781
	* commands/search.c (options): Fix help output to match actual code.
35782
35783
2009-08-02  Vladimir Serbinenko  <phcoder@gmail.com>
35784
35785
	* commands/hexdump.c (grub_cmd_hexdump): Use grub_disk_read instead
35786
	of homegrown code.
35787
35788
2009-08-01  Vladimir Serbinenko  <phcoder@gmail.com>
35789
35790
	* util/hostfs.c (grub_hostfs_dir): Don't use DT_DIR: It doesn't work
35791
	on XFS or ReiserFS.
35792
35793
2009-08-01  Vladimir Serbinenko  <phcoder@gmail.com>
35794
35795
	Support Apple partition map with sector size different from 512 bytes.
35796
35797
	* partmap/apple.c (grub_apple_header): New field 'blocksize'.
35798
	(apple_partition_map_iterate): Respect 'aheader.blocksize'
35799
	and 'apart.partmap_size'.
35800
35801
2009-08-01  Vladimir Serbinenko  <phcoder@gmail.com>
35802
2009-08-01  Robert Millan  <rmh.grub@aybabtu.com>
35803
35804
	Fix cpuid command.
35805
35806
	* commands/i386/cpuid.c (options): New variable.
35807
	(grub_cmd_cpuid): Return real error.
35808
	(GRUB_MOD_INIT(cpuid)): Declare options.
35809
35810
2009-07-31  Vladimir Serbinenko  <phcoder@gmail.com>
35811
35812
	* partmap/pc.c (pc_partition_map_iterate): Check that boot flags are
35813
	valid.
35814
35815
2009-07-31  Bean  <bean123ch@gmail.com>
35816
35817
	* fs/xfs.c (grub_xfs_sblock): Change unused5 field to log2_sect and
35818
	log2_inode.
35819
	(grub_fshelp_node): Move inode field to the end.
35820
	(grub_xfs_data): Remove inode field.
35821
	(grub_xfs_inode_block): Calculate inode size using sblock.
35822
	(grub_xfs_inode_offset): Likewise.
35823
	(grub_xfs_read_inode): Calculate inode size using sblock.
35824
	(grub_xfs_read_block): Replace XFS_INODE_EXTENTS with nrec.
35825
	(grub_xfs_iterate_dir): Calculate inode size using sblock.
35826
	(grub_xfs_mount): Use grub_zalloc instead of grub_malloc. Realloc data
35827
	to match inode size.
35828
	(grub_xfs_dir): goto mount_fail when mount fails, as data->diropen is
35829
	not accessible when data is null.
35830
	(grub_xfs_open): Likewise.
35831
35832
2009-07-31  Bean  <bean123ch@gmail.com>
35833
35834
	* disk/lvm.c (grub_lvm_scan_device): Ignore extra copy of metadata.
35835
	Don't change pv->disk if it's already set.
35836
35837
	* disk/raid.c (grub_raid_scan_device): Merge this function into ...
35838
	(grub_raid_register): ... here.
35839
	(grub_raid_rescan): Removed.
35840
35841
	* include/grub/raid.h (grub_raid_rescan): Removed.
35842
35843
	* util/grub-fstest.c: Remove include file <grub/raid.h>.
35844
	(fstest): Replace grub_raid_rescan with module fini function followed
35845
	by init function.
35846
35847
	* util/grub-probe.c: Add include file <grub/raid.h>.
35848
	(probe_raid_level): New function.
35849
	(probe): Detect abstraction by walking the disk device, support two
35850
	level of abstraction (LVM on RAID) when detecting partition map.
35851
35852
2009-07-31  Pavel Roskin  <proski@gnu.org>
35853
35854
	* disk/raid5_recover.c (grub_raid5_recover): Revert conversion
35855
	to grub_zalloc(), it was erroneous.
35856
	Reported by Bean <bean123ch@gmail.com>
35857
35858
2009-07-30  Vladimir Serbinenko  <phcoder@gmail.com>
35859
35860
	* util/i386/pc/grub-setup.c (setup): Check that no partition is in
1.2.7 by Felix Zielcke
Import upstream version 1.97~beta3
35861
	embedding zone, not only the first one.
17.2.14 by Robert Millan, Felix Zielcke, Robert Millan
* New SVN snapshot.
35862
35863
2009-07-29  Joe Auricchio  <jauricchio@gmail.com>
35864
35865
	* term/gfxterm.c (clear_char): New function.
35866
	(grub_virtual_screen_setup): Use clear_char.
35867
	(scroll_up): Likewise.
35868
	(grub_virtual_screen_cls): Likewise.
35869
35870
2009-07-29  Felix Zielcke  <fzielcke@z-51.de>
35871
35872
	* util/deviceiter.c (get_acceleraid_disk_name): New static
35873
	function.
35874
	(grub_util_iterate_devices): Handle Accelraid devices.
35875
	* util/hostdisk.c (convert_system_partition_to_system_disk): Likewise.
35876
35877
2009-07-28  Robert Millan  <rmh.grub@aybabtu.com>
35878
35879
	* loader/i386/linux.c (grub_cmd_linux): Use ',' rather than ';' as
35880
	separator for the suggested gfxpayload string (';' collides with the
35881
	parser and needs escaping).
35882
35883
2009-07-28  Vladimir Serbinenko  <phcoder@gmail.com>
35884
35885
	* loader/i386/multiboot_helper.S (grub_multiboot_backward_relocator):
35886
	Clear direction flag before jumping to OS.
35887
	(grub_multiboot2_real_boot): Likewise.
35888
35889
2009-07-28  Felix Zielcke  <fzielcke@z-51.de>
35890
35891
	* util/i386/pc/grub-install: Fix parsing of --disk-module
35892
	option.
35893
35894
2009-07-28  Felix Zielcke  <fzielcke@z-51.de>
35895
35896
	* util/i386/pc/grub-setup.c (setup): Fix 2 incorrect checks
35897
	when embedding.
35898
35899
2009-07-26  Felix Zielcke  <fzielcke@z-51.de>
35900
35901
	* util/grub-mkconfig.in (package_version): New variable.
35902
	Use it do display the version.
35903
1.1.12 by Robert Millan
Import upstream version 1.96+20090725
35904
2009-07-25  Felix Zielcke  <fzielcke@z-51.de>
35905
35906
	* kern/file.c (grub_file_open): Revert to previous check with
35907
	grub_errno.
35908
35909
2009-07-25  Vladimir Serbinenko  <phcoder@gmail.com>
35910
35911
	* commands/probe.c (GRUB_MOD_INIT (probe)): Remove "[--target=target]"
35912
	from help line. It's out of sync with code.
35913
35914
2009-07-25  Vladimir Serbinenko  <phcoder@gmail.com>
35915
35916
	* kern/parser.c (grub_parser_execute): Fix a bug causing truncated
35917
	entries on failed boot.
35918
35919
2009-07-25  Felix Zielcke  <fzielcke@z-51.de>
35920
35921
	* kern/file.c (grub_file_open): Fix an error check.
35922
35923
2009-07-24  Vladimir Serbinenko  <phcoder@gmail.com>
35924
35925
	* util/i386/pc/grub-setup.c (setup): Fix segmentation fault when
35926
	partition map couldn't be identified.
35927
35928
2009-07-23  Pavel Roskin  <proski@gnu.org>
35929
35930
	* commands/xnu_uuid.c (transform): Use GRUB_CPU_WORDS_BIGENDIAN
35931
	instead of WORDS_BIGENDIAN.  Use grub_le_to_cpu32(), so that the
35932
	case of little endian words becomes just an optimization.
35933
	Respect const modifier.
1.2.7 by Felix Zielcke
Import upstream version 1.97~beta3
35934
	(md5_final): Use code that doesn't depend on endianness.
1.1.12 by Robert Millan
Import upstream version 1.96+20090725
35935
35936
	* include/grub/misc.h (ALIGN_UP): Cast align to the type of addr
35937
	to avoid loss of upper bits if align is unsigned and shorter
35938
	than addr.
35939
35940
2009-07-21  Vladimir Serbinenko  <phcoder@gmail.com>
35941
35942
	UUID support for UFS
35943
35944
	* fs/ufs.c (grub_ufs_sblock): Add uuidhi and uuidlow.
35945
	(grub_ufs_uuid): New function.
35946
	(grub_ufs_fs): add .uuid
35947
35948
2009-07-21  Pavel Roskin  <proski@gnu.org>
35949
35950
	* kern/dl.c (grub_dl_check_header): Make static.
35951
35952
2009-07-21  Felix Zielcke  <fzielcke@z-51.de>
35953
35954
	* util/grub.d/30_os-prober.in: Remove unused CHAINROOT.  Don't
35955
	add drivemap for Vista.  It breaks Windows 7.
35956
35957
2009-07-21  Vladimir Serbinenko  <phcoder@gmail.com>
35958
35959
	* fs/ufs.c (grub_ufs_sblock): Fix offset of mtime2 which was off by
35960
	128 bytes
35961
17.2.10 by Felix Zielcke
Add back Conflicts/Replaces grub.
35962
2009-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
35963
35964
	Add BFS support
35965
35966
	* conf/common.rmk (grub_probe_SOURCES): Add fs/befs.c.
35967
	(grub_fstest_SOURCES): Likewise.
35968
	(pkglib_MODULES): Add befs.mod.
35969
	(befs_mod_SOURCES): New variable.
35970
	(befs_mod_CFLAGS): Likewise.
35971
	(befs_mod_LDFLAGS): Likewise.
35972
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
35973
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
35974
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35975
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
35976
	(grub_setup_SOURCES): Likewise.
35977
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35978
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
35979
	(grub_setup_SOURCES): Likewise.
35980
	* fs/befs.c: New file.
35981
	* fs/afs.c (GRUB_AFS_FSNAME): New declaration.
35982
	(GRUB_AFS_SBLOCK_SECTOR): Likewise.
35983
	(GRUB_AFS_SBLOCK_MAGIC1) [MODE_BFS]: New conditional declaration.
35984
	(GRUB_AFS_BTREE_MAGIC) [MODE_BFS]: Likewise
35985
	(B_KEY_INDEX_ALIGN): New declaration.
35986
	(B_KEY_INDEX_OFFSET): Use B_KEY_INDEX_ALIGN.
35987
	(grub_afs_bnode) [MODE_BFS]: Make key_count and key_size 16-bit
35988
	(grub_afs_btree) [MODE_BFS]: New conditional declaration.
35989
	(grub_afs_sblock) [MODE_BFS]: Remove link_count.
35990
	(grub_afs_validate_sblock) [MODE_BFS]: Support BFS
35991
	(grub_afs_mount) [MODE_BFS]: Likewise.
35992
	(grub_afs_dir) [MODE_BFS]: Divide mtime by 65536 and not 1000000.
35993
	(grub_afs_fs): Use GRUB_AFS_FSNAME
35994
	(GRUB_MOD_INIT (afs)) [MODE_BFS]: Rename to ...
35995
	(GRUB_MOD_INIT (befs)) [MODE_BFS]: ... this
35996
	(GRUB_MOD_FINI (afs)) [MODE_BFS]: Rename to ...
35997
	(GRUB_MOD_FINI (befs)) [MODE_BFS]: ... this
35998
35999
2009-07-19  Yves BLUSSEAU  <yves.grub-devel@zetam.org>
36000
36001
	* util/getroot.c (find_root_device): Add support for MacOSX.
36002
	* util/hostdisk.c: Likewise.
36003
36004
2009-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
36005
36006
	* font/font.c (find_glyph): Check whether a font is present to avoid
36007
	segmentation fault.
36008
36009
2009-07-20  Joe Auricchio  <jauricchio@gmail.com>
36010
36011
	* term/gfxterm.c (grub_virtual_screen_setup): Clear virtual_screen.
36012
36013
2009-07-20  Pavel Roskin  <proski@gnu.org>
36014
36015
	* configure.ac: Trim excessively wordy excuses.
36016
36017
2009-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
36018
36019
	Add symlink, mtime and label support to AtheFS.
36020
36021
	* fs/afs.c (grub_afs_sblock): Declare `name' as char.
36022
	(grub_afs_iterate_dir): Handle symlinks.
36023
	(grub_afs_open): Use grub_afs_read_symlink.
36024
	(grub_afs_dir): Likewise.
36025
	Pass mtime.
36026
	(grub_afs_label): New function.
36027
	(grub_afs_fs): Add grub_afs_label.
36028
	(grub_afs_read_symlink): New function.
36029
36030
2009-07-20  Vladimir Serbinenko  <phcoder@gmail.com>
36031
36032
	Fix AtheFS support.
36033
36034
	* fs/afs.c: Fix comments style.
36035
	(grub_afs_blockrun): Declare as packed.
36036
	(grub_afs_datastream): Likewise.
36037
	(grub_afs_bnode): Likewise.
36038
	(grub_afs_btree): Likewise.
36039
	(grub_afs_sblock): Likewise.
36040
	Declare `name' as char.
36041
	(grub_afs_inode): Declare as packed.
36042
	Change void *vnode to grub_uint32_t unused.
36043
	(grub_afs_iterate_dir): Check that key_size is positive.
36044
	(grub_afs_mount): Don't read superblock twice.
36045
	(grub_afs_dir): Don't free node in case of error,
36046
	grub_fshelp_find_file already handles this.
36047
	(grub_afs_open): Likewise.
36048
36049
2009-07-19  Pavel Roskin  <proski@gnu.org>
36050
36051
	* Makefile.in: Remove LIBLZO and enable_lzo.
36052
	* conf/i386-pc.rmk: Remove lzo support.
36053
	* configure.ac: Remove checks for lzo, don't define ENABLE_LZMA.
36054
	* include/grub/i386/pc/kernel.h: Define ENABLE_LZMA.  Remove lzo
36055
	support.
36056
	* kern/i386/pc/lzo1x.S: Remove.
36057
	* kern/i386/pc/startup.S: Remove lzo support.
36058
	* util/i386/pc/grub-mkimage.c: Likewise.
36059
36060
2009-07-19  Vladimir Serbinenko  <phcoder@gmail.com>
36061
36062
	* disk/usbms.c (grub_usbms_transfer): Fix double semicolon.
36063
	* fs/xfs.c (grub_xfs_dir): Likewise.
36064
	* fs/afs.c (grub_afs_dir): Likewise.
36065
	* fs/iso9660.c (grub_iso9660_iterate_dir): Likewise.
36066
	(grub_iso9660_open): Likewise.
36067
	* fs/jfs.c (grub_jfs_open): Likewise.
36068
	* fs/ext2.c (grub_ext2_dir): Likewise.
36069
	* include/grub/macho.h (grub_macho_fat_arch): Likewise.
36070
	* script/sh/lexer.c (grub_script_yylex): Likewise.
36071
36072
2009-07-16  Pavel Roskin  <proski@gnu.org>
36073
36074
	* configure.ac: Never add "-c" to CFLAGS.
36075
36076
	* configure.ac: Fix incorrect comparison for grub_cv_cc_efiemu.
36077
36078
	* configure.ac: Fix wrong use of grub_cv_cc_no_red_zone where
36079
	grub_cv_cc_efiemu should be used.
36080
36081
	* configure.ac: Typo fixes.
36082
36083
	* kern/mm.c (grub_zalloc): New function.
36084
	(grub_debug_zalloc): Likewise.
36085
	* include/grub/mm.h: Declare grub_zalloc() and
36086
	grub_debug_zalloc().
36087
	* util/misc.c (grub_zalloc): New function.
36088
	* bus/usb/uhci.c (grub_uhci_pci_iter): Use grub_zalloc()
36089
	instead of grub_malloc(), remove unneeded initializations.
36090
	* bus/usb/usbhub.c (grub_usb_hub_add_dev): Likewise.
36091
	* commands/extcmd.c (grub_extcmd_dispatcher): Likewise.
36092
	* commands/parttool.c (grub_cmd_parttool): Likewise.
36093
	* disk/i386/pc/biosdisk.c (grub_biosdisk_open): Likewise.
36094
	* disk/raid5_recover.c (grub_raid5_recover): Likewise.
36095
	* disk/raid6_recover.c (grub_raid6_recover): Likewise.
36096
	* disk/usbms.c (grub_usbms_finddevs): Likewise.
36097
	* efiemu/mm.c (grub_efiemu_request_memalign): Likewise.
36098
	* efiemu/pnvram.c (grub_efiemu_pnvram): Likewise.
36099
	(grub_cmd_efiemu_pnvram): Likewise.
36100
	* fs/i386/pc/pxe.c (grub_pxefs_open): Likewise.
36101
	* fs/iso9660.c (grub_iso9660_mount): Likewise.
36102
	(grub_iso9660_iterate_dir): Likewise.
36103
	* fs/jfs.c (grub_jfs_opendir): Likewise.
36104
	* fs/ntfs.c (list_file): Likewise.
36105
	(grub_ntfs_mount): Likewise.
36106
	* kern/disk.c (grub_disk_open): Likewise.
36107
	* kern/dl.c (grub_dl_load_core): Likewise.
36108
	* kern/elf.c (grub_elf_file): Likewise.
36109
	* kern/env.c (grub_env_context_open): Likewise.
36110
	(grub_env_set): Likewise.
36111
	(grub_env_set_data_slot): Likewise.
36112
	* kern/file.c (grub_file_open): Likewise.
36113
	* kern/fs.c (grub_fs_blocklist_open): Likewise.
36114
	* loader/i386/multiboot.c (grub_module): Likewise.
36115
	* loader/xnu.c (grub_xnu_create_key): Likewise.
36116
	(grub_xnu_create_value): Likewise.
36117
	* normal/main.c (grub_normal_add_menu_entry): Likewise.
36118
	(read_config_file): Likewise.
36119
	* normal/menu_entry.c (make_screen): Likewise.
36120
	* partmap/sun.c (sun_partition_map_iterate): Likewise.
36121
	* script/sh/lexer.c (grub_script_lexer_init): Likewise.
36122
	* script/sh/script.c (grub_script_parse): Likewise.
36123
	* video/bitmap.c (grub_video_bitmap_create): Likewise.
36124
	* video/readers/jpeg.c (grub_video_reader_jpeg): Likewise.
36125
	* video/readers/png.c (grub_png_output_byte): Likewise.
36126
	(grub_video_reader_png): Likewise.
36127
36128
2009-07-16  Vladimir Serbinenko  <phcoder@gmail.com>
36129
36130
	Enable all targets that can be built by default
36131
36132
	* configure.ac: enable efiemu runtime, grub-emu, grub-emu-usb,
36133
	grub-mkfont and grub-fstest if they can be built
36134
36135
2009-07-16  Vladimir Serbinenko  <phcoder@gmail.com>
36136
36137
	Fix hang and segmentation fault in grub-emu-usb
36138
36139
	* disk/scsi.c (grub_scsi_open): return err and not grub_errno
36140
	* util/usb.c (grub_libusb_devices): likewise
36141
	(grub_libusb_init): rename to ...
36142
	(GRUB_MOD_INIT (libusb)):...this
36143
	(grub_libusb_fini): rename to ..
36144
	(GRUB_MOD_FINI (libusb)):...this
36145
	* disk/usbms.c (grub_usbms_transfer): fix retry logic
36146
	* include/grub/disk.h (grub_raid_init): removed, it's useless
36147
	(grub_raid_fini): likewise
36148
	(grub_lvm_init): likewise
36149
	(grub_lvm_fini): likewise
36150
	* util/grub-emu.c (main): don't call grub_libusb_init, it's done
36151
	by grub_init_all
36152
36153
2009-07-16  Vladimir Serbinenko  <phcoder@gmail.com>
36154
36155
	Fix libusb
36156
36157
	* Makefile.in (LIBUSB): new macro
36158
	* genmk.rb (Utility/print_tail): new method
36159
	(Utility/rule): use intermediary variable #{prefix}_OBJECTS
36160
	(top level): call util.print_tail at the end.
36161
36162
2009-07-16  Vladimir Serbinenko  <phcoder@gmail.com>
36163
36164
	Make FreeBSD accept zpool.cache
36165
36166
	* loader/i386/bsd.c (grub_freebsd_add_meta_module): spoof filename if
36167
	type is /boot/zfs/zpool.cache
36168
36169
2009-07-16  Vladimir Serbinenko  <phcoder@gmail.com>
36170
36171
	Fix 64-bit efiemu
36172
36173
	* include/grub/efiemu/efiemu.h (grub_efiemu_configuration_table64_t):
36174
	correct wrong typedef
36175
	* efiemu/prepare.c (SUFFIX (grub_efiemu_prepare)): minor style fixes
36176
36177
2009-07-15  Pavel Roskin  <proski@gnu.org>
36178
36179
	* include/grub/disk.h (struct grub_disk_dev): Use enum for id.
36180
	* kern/disk.c (struct grub_disk_cache): Likewise.
36181
36182
	* commands/probe.c (options): Typo fix.
36183
36184
	* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_BPB_END):
36185
	Increase to 0x5a to accommodate FAT32.  Adjust other offsets
36186
	accordingly.
36187
	Original patch by Yves Blusseau <yves.grub-devel@zetam.org>
36188
36189
	* boot/i386/pc/boot.S (general_error_string): Add DOS newline at
36190
	the end of "Error" to make the message more readable.
36191
36192
	* boot/i386/pc/boot.S (kernel_segment): Remove.
36193
	(copy_buffer): Use GRUB_BOOT_MACHINE_KERNEL_ADDR in segment 0
36194
	for destination.
36195
36196
	* boot/i386/pc/boot.S (boot_version): Remove.
36197
	* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_VER_MAJ):
36198
	Remove.
36199
36200
	* include/grub/i386/pc/boot.h: Sort all offsets.
36201
	(GRUB_BOOT_MACHINE_KERNEL_ADDRESS): Remove, it's unused.
36202
	(GRUB_BOOT_MACHINE_KERNEL_SEGMENT): Likewise.
36203
	* boot/i386/pc/boot.S: Assert location of every offset listed in
36204
	include/grub/i386/pc/boot.h.
36205
36206
2009-07-13  Pavel Roskin  <proski@gnu.org>
36207
36208
	* include/grub/i386/coreboot/machine.h: Rename
36209
	GRUB_MACHINE_LINUXBIOS to GRUB_MACHINE_COREBOOT.
36210
	* loader/multiboot_loader.c (grub_cmd_multiboot_loader): Allow
36211
	multiboot 1 for GRUB_MACHINE_COREBOOT and GRUB_MACHINE_QEMU.
36212
36213
	* kern/dl.c: Force native word size to suppress warnings when
36214
	compiling grub-emu.
36215
36216
	* kern/device.c (grub_device_iterate): Change struct part_ent to
36217
	hold the name, not a pointer to it.  Use one grub_malloc() per
36218
	partition, not two.  Free partition_name if grub_malloc() fails.
36219
	Set ents to NULL only before grub_partition_iterate() is called.
36220
36221
2009-07-11  Bean  <bean123ch@gmail.com>
36222
36223
	* kern/ieee1275/openfw.c (grub_children_iterate): Fix size of
36224
	childname.
36225
36226
2009-07-10  Bean  <bean123ch@gmail.com>
36227
2009-07-10  Robert Millan  <rmh.grub@aybabtu.com>
36228
36229
	* kern/ieee1275/openfw.c (grub_children_iterate)
36230
	(grub_devalias_iterate): Fix size evaluation for property or path
36231
	strings, which was broken since r2132.
36232
17.2.9 by Robert Millan
* New SVN snapshot.
36233
2009-07-07  Pavel Roskin  <proski@gnu.org>
36234
36235
	* commands/search.c (search_file): Merge into ...
36236
	(search_fs): ... this.  Accept search type as argument.
36237
	(grub_cmd_search): Pass search type to search_fs().
36238
36239
	* include/grub/util/console.h: New file.
36240
	* util/console.c: Use it instead of grub/machine/console.h.
36241
	* util/grub-emu.c: Likewise.
36242
36243
	* lib/arg.c (find_long_option): Remove.
36244
	(find_long): Add `len' argument, make `s' const char *.
36245
	(grub_arg_parse): Parse long options in place, not in a
36246
	temporary buffer.
36247
36248
2009-07-06  Pavel Roskin  <proski@gnu.org>
36249
36250
	* commands/search.c (search_fs): Fix potential NULL pointer
36251
	dereference.
36252
36253
	* commands/search.c (search_fs): Replace QUID macro with quid_fn
36254
	function pointer.
36255
36256
2009-07-06  Daniel Mierswa  <impulze@impulze.org>
36257
36258
	* commands/search.c (search_fs): Use grub_strcasecmp() for UUID
36259
	comparison.
36260
36261
2009-07-05  Pavel Roskin  <proski@gnu.org>
36262
36263
	* include/grub/i386/linux.h (struct linux_kernel_params):
36264
	Restore padding3, it's still needed.
36265
36266
	* util/grub.d/10_freebsd.in: Fix spelling of `device.hints' on
36267
	FreeBSD.
36268
	* util/osdetect.lua: Likewise.
36269
36270
2009-07-05  Bean  <bean123ch@gmail.com>
36271
36272
	* conf/common.rmk (lua_mode_SOURCES): Add script/lua/lstrlib.c.
36273
36274
	* script/lua/grub_lib.c (grub_lua_run): Check input parameter.
36275
	(grub_lua_getenv): Likewise.
36276
	(grub_lua_setenv): Likewise.
36277
	(save_errno): New function.
36278
	(push_result): Likewise.
36279
	(grub_lua_enum_device): Likewise.
36280
	(grub_lua_enum_file): Likewise.
36281
	(grub_lua_file_open): Likewise.
36282
	(grub_lua_file_close): Likewise.
36283
	(grub_lua_file_seek): Likewise.
36284
	(grub_lua_file_read): Likewise.
36285
	(grub_lua_file_getline): Likewise.
36286
	(grub_lua_file_getsize): Likewise.
36287
	(grub_lua_file_getpos): Likewise.
36288
	(grub_lua_file_eof): Likewise.
36289
	(grub_lua_file_exist): Likewise.
36290
	(grub_lua_add_menu): Likewise.
36291
36292
	* script/lua/grub_lua.h (isupper): New inline function.
36293
	(islower): Likewise.
36294
	(ispunct): Likewise.
36295
	(isxdigit): Likewise.
36296
	(strcspn): Change to normal function.
36297
	(strpbkr): New function declaration.
36298
	(memchr): Likewise.
36299
36300
	* script/lua/grub_main.c (scan_str): New function.
36301
	(strcspn): Likewise.
36302
	(strpbrk): Likewise.
36303
	(memchr): Likewise.
36304
36305
	* script/lua/linit.c (lualibs): Enable the string library.
36306
36307
	* util/osdetect.lua: New file.
36308
36309
2009-07-04  Robert Millan  <rmh.grub@aybabtu.com>
36310
36311
	* include/grub/i386/linux.h (struct linux_kernel_params): Add
36312
	`capabilities' member.
36313
36314
2009-07-02  Pavel Roskin  <proski@gnu.org>
36315
36316
	* genparttoollist.sh: Add missing newline at the end.
36317
36318
2009-07-01  Pavel Roskin  <proski@gnu.org>
36319
36320
	* kern/x86_64/efi/callwrap.S: Add missing newline at the end.
36321
36322
	* util/hostdisk.c (open_device): Remove `const' from
36323
	`sysctl_size', as sysctlbyname() can change it (in this case it
36324
	doesn't actually happen).
36325
36326
	* include/grub/types.h: Define GRUB_LONG_MAX and GRUB_LONG_MIN
36327
	using signed long int constants.
36328
36329
	* util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Make `p'
36330
	constant to avoid a warning on FreeBSD.
36331
36332
	* util/hostdisk.c (device_is_wholedisk): Compile only on systems
36333
	where it's needed.
36334
36335
	* Makefile.in: Install include/grub/machine symlink.
36336
36337
	* Makefile.in: When installing symlinks, use "cp -fR", which
36338
	works on FreeBSD and MacOSX.
36339
	From Yves Blusseau <cl7m42e02@sneakemail.com>
36340
36341
	* kern/dl.c (grub_dl_resolve_symbol): Make static.
36342
	* include/grub/dl.h: Remove grub_dl_resolve_symbol().
36343
36344
	* util/misc.c: Move grub_reboot() and grub_halt() ...
36345
	* util/grub-emu.c: ... here.  Make main_env static.
36346
	* include/grub/util/misc.h: Remove main_env.
36347
36348
	* kern/mm.c: Use correct format to print size_t.
36349
36350
	* include/grub/elf.h: Define Elf_Sword and Elf_Xword.
36351
	* kern/i386/dl.c: Use ELF symbols without "32" or "64".
36352
	* kern/powerpc/dl.c: Likewise.
36353
	* kern/sparc64/dl.c: Likewise.
36354
	* kern/x86_64/dl.c: Likewise.
36355
36356
2009-07-01  Robert Millan  <rmh.grub@aybabtu.com>
36357
36358
	Fix grub-emu build on sparc64-ieee1275.
36359
17.2.10 by Felix Zielcke
Add back Conflicts/Replaces grub.
36360
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Synchronize with ...
17.2.9 by Robert Millan
* New SVN snapshot.
36361
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): ... this.
36362
36363
2009-07-01  Robert Millan  <rmh.grub@aybabtu.com>
36364
36365
	* util/misc.c: Include `<setjmp.h>' and `<grub/machine/machine.h>'.
36366
	(grub_reboot, grub_halt): New functions.
36367
36368
	* util/i386/pc/misc.c: Delete.  Update all users.
36369
	* util/sparc64/ieee1275/misc.c: Likewise.
36370
	* util/powerpc/ieee1275/misc.c: Likewise.
36371
36372
2009-07-01  Robert Millan  <rmh.grub@aybabtu.com>
36373
36374
	* conf/i386.rmk (setjmp_mod_SOURCES)
36375
	(setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): Move to ...
36376
	* conf/common.rmk (setjmp_mod_SOURCES)
36377
	(setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): ... here, and modify
36378
	to use $(target_cpu).
36379
	* conf/x86_64-efi.rmk (setjmp_mod_SOURCES)
36380
	(setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): Remove.
36381
	* conf/powerpc-ieee1275.rmk: Likewise.
36382
	* conf/sparc64-ieee1275.rmk: Likewise.
36383
36384
	* conf/i386-pc.rmk (kernel_img_SOURCES): Use
36385
	$(target_cpu) for kern/$(target_cpu)/dl.c.
36386
	* conf/i386-efi.rmk: Likewise.
36387
	* conf/i386-ieee1275.rmk: Likewise.
36388
	* conf/x86_64-efi.rmk: Likewise.
36389
	* conf/i386-coreboot.rmk: Likewise.
36390
	* conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Use
36391
	$(target_cpu) for kern/$(target_cpu)/dl.c and for
36392
	kern/$(target_cpu)/cache.S.
36393
	* conf/sparc64-ieee1275.rmk: Likewise.
36394
36395
2009-07-01  Robert Millan  <rmh.grub@aybabtu.com>
36396
36397
	* include/grub/i386/linux.h (linux_kernel_params): Change `mmap_size'
36398
	type to `grub_uint8_t', and adjust `padding9' accordingly.
36399
36400
2009-06-29  Robert Millan  <rmh.grub@aybabtu.com>
36401
36402
	* include/grub/i386/linux.h (GRUB_VIDEO_TYPE_TEXT): New macro.
36403
36404
	* loader/i386/linux.c [__i386__] (grub_linux_boot): Simplify inline
36405
	assembly in final jump, using register constraints.
36406
36407
	(grub_linux_boot): For text mode, initialize `have_vga' using
36408
	GRUB_VIDEO_TYPE_TEXT rather than 0 (this changes its value to 1).
36409
36410
	Initialize `video_cursor_x' and `video_cursor_y' as late as possible,
36411
	right before the final jump.
36412
36413
	Set `video_mode' to 0x3.
36414
36415
	Document initialization of `video_page', `video_mode' and
36416
	`video_ega_bx'.
36417
36418
2009-06-29  Robert Millan  <rmh.grub@aybabtu.com>
36419
36420
	* include/grub/i386/linux.h (GRUB_LINUX_FLAG_QUIET): New macro.
36421
	* loader/i386/linux.c (grub_cmd_linux): Recognize "quiet" option,
17.2.10 by Felix Zielcke
Add back Conflicts/Replaces grub.
36422
	and set GRUB_LINUX_FLAG_QUIET appropriately.
17.2.9 by Robert Millan
* New SVN snapshot.
36423
36424
2009-06-29  Robert Millan  <rmh.grub@aybabtu.com>
36425
36426
	Fix build on Debian / sparc.
36427
36428
	* configure.ac: Recognize `sparc' target_cpu (as sparc64).
36429
36430
2009-06-28  Pavel Roskin  <proski@gnu.org>
36431
36432
	* kern/i386/qemu/mmap.c (grub_machine_mmap_iterate): Use cast to
36433
	fix a warning.
36434
36435
	* util/grub.d/10_linux.in: Match SUSE style initrd names.
36436
36437
2009-06-27  Robert Millan  <rmh.grub@aybabtu.com>
36438
36439
	* loader/i386/linux.c (grub_linux_boot): Fix uninitialized use of
36440
	`err'.
36441
36442
2009-06-27  Robert Millan  <rmh.grub@aybabtu.com>
36443
36444
	Revert r2338.
36445
36446
	* loader/i386/linux.c (grub_cmd_linux): Don't call grub_error when
36447
	file can't be opened.  grub_file_open() is already supposed to set
17.2.10 by Felix Zielcke
Add back Conflicts/Replaces grub.
36448
	grub_errno / grub_errmsg appropriately.
17.2.9 by Robert Millan
* New SVN snapshot.
36449
	* loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
36450
36451
2009-06-27  Pavel Roskin  <proski@gnu.org>
36452
2009-06-27  Robert Millan  <rmh.grub@aybabtu.com>
36453
36454
	* include/grub/dl.h: Include grub/elf.h.
36455
	(struct grub_dl): Add symtab field.
36456
	* kern/dl.c [GRUB_MACHINE_QEMU]: Define
36457
	GRUB_MODULES_MACHINE_READONLY.
36458
	(grub_dl_resolve_symbols): Populate mod->symtab, making a copy
36459
	of the header for read-only modules.
36460
	(grub_dl_unload): Free mod->symtab for read-only modules.
36461
	* kern/i386/dl.c: Use mod->symtab.
36462
	* kern/powerpc/dl.c: Likewise.
36463
	* kern/sparc64/dl.c: Likewise.
36464
	* kern/x86_64/dl.c: Likewise.
36465
36466
	* conf/i386-qemu.rmk: New file.
36467
	* kern/i386/qemu/startup.S: Likewise.
36468
	* kern/i386/qemu/mmap.c: Likewise.
36469
	* boot/i386/qemu/boot.S: Likewise.
36470
	* include/grub/i386/qemu/time.h: Likewise.
36471
	* include/grub/i386/qemu/serial.h: Likewise.
36472
	* include/grub/i386/qemu/kernel.h: Likewise.
36473
	* include/grub/i386/qemu/console.h: Likewise.
36474
	* include/grub/i386/qemu/boot.h: Likewise.
36475
	* include/grub/i386/qemu/init.h: Likewise.
36476
	* include/grub/i386/qemu/machine.h: Likewise.
36477
	* include/grub/i386/qemu/loader.h: Likewise.
36478
	* include/grub/i386/qemu/memory.h: Likewise.
36479
36480
	* conf/i386-coreboot.rmk (GRUB_BOOT_MACHINE_LINK_ADDR)
36481
	(GRUB_KERNEL_MACHINE_LINK_ADDR): New variables.
36482
	[qemu] (pkglib_IMAGES): Add `boot.img'.
36483
	[qemu] (boot_img_SOURCES, boot_img_ASFLAGS, boot_img_LDFLAGS)
36484
	[qemu] (boot_img_FORMAT): New variables.
36485
	[qemu] (bin_UTILITIES): Add `grub-mkimage'.
36486
	[qemu] (grub_mkimage_SOURCES, grub_mkimage_CFLAGS): New variables.
36487
	[qemu] (kernel_img_SOURCES, kernel_img_HEADERS, kernel_img_CFLAGS)
36488
	[qemu] (kernel_img_ASFLAGS, kernel_img_LDFLAGS)
36489
	[qemu] (kernel_img_FORMAT): New variables.
36490
36491
	* configure.ac: Recognise `i386-qemu'.
36492
36493
	* util/i386/pc/grub-mkimage.c (compress_kernel): Add dummy variant
36494
	(for no compression).
36495
	[GRUB_MACHINE_QEMU] (generate_image): Misc adjustments to produce
36496
	a valid i386 ROM image.  Make `GRUB_KERNEL_MACHINE_COMPRESSED_SIZE',
36497
	`GRUB_KERNEL_MACHINE_INSTALL_DOS_PART' and
36498
	`GRUB_KERNEL_MACHINE_INSTALL_BSD_PART' optional features (with
36499
	ifdefs).
36500
36501
2009-06-27  Pavel Roskin  <proski@gnu.org>
36502
36503
	* efiemu/prepare.c: Eliminate TYPE macro, it makes code hard to
36504
	read.
36505
	* efiemu/prepare32.c: Likewise.
36506
	* efiemu/prepare64.c: Likewise.
36507
36508
2009-06-26  Pavel Roskin  <proski@gnu.org>
36509
36510
	* include/grub/types.h: Define GRUB_TARGET_WORDSIZE.
36511
	* include/grub/elf.h: Define symbols without "32" or "64" based
36512
	on GRUB_TARGET_WORDSIZE.
36513
	* include/grub/multiboot2.h: Use GRUB_TARGET_WORDSIZE.
36514
	* efiemu/loadcore32.c: Redefine GRUB_TARGET_WORDSIZE, remove own
36515
	ELF definitions.
36516
	* efiemu/loadcore64.c: Likewise.
36517
	* loader/i386/bsd32.c: Likewise.
36518
	* loader/i386/bsd64.c: Likewise.
36519
	* kern/dl.c: Remove own ELF definitions.
36520
	* util/i386/efi/grub-mkimage.c: Likewise.
36521
36522
2009-06-23  Robert Millan  <rmh.grub@aybabtu.com>
36523
36524
	* kern/i386/pc/startup.S (real_to_prot): Access `gdtdesc' using
36525
	segment 0x0 unconditionally, because the reference generated by
36526
	GAS is an absolute address.
36527
36528
2009-06-22  Robert Millan  <rmh.grub@aybabtu.com>
36529
36530
	* include/grub/i386/kernel.h: Include `<grub/machine/machine.h>'.
36531
	[! GRUB_MACHINE_IEEE1275]: Set `GRUB_MOD_ALIGN' to 0x1.
36532
36533
2009-06-22  Robert Millan  <rmh.grub@aybabtu.com>
36534
36535
	* commands/search.c (grub_cmd_search): Macroify hardcoded args[]
36536
	indexes.  Check for -f explicitly.
36537
	(search_file): Improve error message.
36538
	(GRUB_MOD_INIT(search)): Add missing `-n' to help output.
36539
36540
2009-06-22  Robert Millan  <rmh.grub@aybabtu.com>
36541
36542
	* conf/i386-pc.rmk (GRUB_MEMORY_MACHINE_LINK_ADDR): Rename to ...
36543
	(GRUB_KERNEL_MACHINE_LINK_ADDR): ... this.  Update all users.
36544
36545
2009-06-22  Robert Millan  <rmh.grub@aybabtu.com>
36546
36547
	* conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/misc.S'.
36548
	* conf/i386-ieee1275.rmk: Likewise.
36549
	* conf/i386-coreboot.rmk: Likewise.
36550
36551
	* kern/i386/pc/startup.S (grub_stop): Remove function.
36552
	* kern/i386/ieee1275/startup.S: Likewise.
36553
	* kern/i386/coreboot/startup.S: Likewise.
36554
	* kern/i386/misc.S (grub_stop): New function.
36555
36556
2009-06-22  Robert Millan  <rmh.grub@aybabtu.com>
36557
36558
	* kern/i386/pc/startup.S (real_to_prot): Move from here ...
36559
	* kern/i386/realmode.S (real_to_prot): ... to here.
36560
36561
2009-06-22  Robert Millan  <rmh.grub@aybabtu.com>
36562
36563
	* conf/i386-ieee1275.rmk (pkglib_PROGRAMS): Replace `kernel.elf'
36564
	with `kernel.img'.
36565
	(kernel_elf_SOURCES): Rename to ...
36566
	(kernel_img_SOURCES): ... this.
36567
	(kernel_elf_HEADERS): Rename to ...
36568
	(kernel_img_HEADERS): ... this.  Update all users.
36569
	(kernel_elf_ASFLAGS): Rename to ...
36570
	(kernel_img_ASFLAGS): ... this.
36571
	(kernel_elf_CFLAGS): Rename to ...
36572
	(kernel_img_CFLAGS): ... this.
36573
	(kernel_elf_LDFLAGS): Rename to ...
36574
	(kernel_img_LDFLAGS): ... this.
36575
	* conf/i386-coreboot.rmk: Likewise.
36576
	* conf/powerpc-ieee1275.rmk: Likewise.
36577
36578
	* util/elf/grub-mkimage.c (add_segments): Replace "kernel.elf"
36579
	with "kernel.img".
36580
36581
2009-06-21  Pavel Roskin  <proski@gnu.org>
36582
36583
	* loader/powerpc/ieee1275/linux.c (offset_phdr): Fix prototypes
36584
	to match nested functions.
36585
	* loader/sparc64/ieee1275/linux.c: Likewise.
36586
36587
	* conf/i386-ieee1275.rmk: Define kernel_elf_ASFLAGS.
36588
36589
2009-06-21  Robert Millan  <rmh.grub@aybabtu.com>
36590
36591
	* configure.ac: Enable `END_SYMBOL' / `BSS_START_SYMBOL' test on
36592
	all i386 platforms.
36593
36594
2009-06-21  Robert Millan  <rmh.grub@aybabtu.com>
36595
36596
	Fix asm file handling on ELF, and remove workarounds.
36597
36598
	* genmk.rb (class Programs): Detect assembly files, and set ASFLAGS
17.2.10 by Felix Zielcke
Add back Conflicts/Replaces grub.
36599
	and -DASM_FILE=1 appropriately (copied from `class Images' stanza).
17.2.9 by Robert Millan
* New SVN snapshot.
36600
	* kern/i386/ieee1275/startup.S (ASM_FILE): Remove macro.
36601
	* kern/i386/coreboot/startup.S (ASM_FILE): Likewise.
36602
36603
2009-06-21  Vladimir Serbinenko  <phcoder@gmail.com>
36604
36605
	Load BSD ELF modules
36606
36607
	* conf/i386-pc.rmk (bsd_mod_SOURCES): Add loader/i386/bsd32.c
36608
	and loader/i386/bsd64.c
36609
	* include/grub/i386/bsd.h (FREEBSD_MODTYPE_MODULE): Remove
36610
	(FREEBSD_MODTYPE_ELF_MODULE): New definition
36611
	(FREEBSD_MODTYPE_ELF_MODULE_OBJ): Likewise
36612
	(grub_freebsd_load_elfmodule32): New declaration
36613
	(grub_freebsd_load_elfmoduleobj64): Likewise
36614
	(grub_freebsd_load_elf_meta32): Likewise
36615
	(grub_freebsd_load_elf_meta64): Likewise
36616
	(grub_freebsd_add_meta): Likewise
36617
	(grub_freebsd_add_meta_module): Likewise
36618
	* loader/i386/bsd.c (grub_freebsd_add_meta): Make global
36619
	(grub_freebsd_add_meta_module): Likewise and move module-specific
36620
	parts to grub_cmd_freebsd and grub_cmd_freebsd_module
36621
	(grub_cmd_freebsd): Add elf-kernel specific parts
36622
	based on grub_freebsd_add_meta_module
36623
	(grub_cmd_freebsd_module): Add type parsing moved from
36624
	grub_freebsd_add_meta_module
36625
	(grub_cmd_freebsd_module_elf): New function
36626
	(cmd_freebsd_module_elf): New variable
36627
	(GRUB_MOD_INIT): Register freebsd_module_elf
36628
	* loader/i386/bsd32.c: New file
36629
	* loader/i386/bsd64.c: Likewise
36630
	* loader/i386/bsdXX.c: Likewise
36631
	* kern/elf.c (grub_elf32_load): Let hook decide which pheaders to load
36632
	(grub_elf64_load): Likewise
36633
	* include/grub/elfload.h (grub_elf32_load_hook_t): New parameter do_load
36634
	All users updated
36635
	(grub_elf64_load_hook_t): Likewise
36636
36637
2009-06-21  Colin Watson  <cjwatson@ubuntu.com>
36638
36639
	* util/grub-mkconfig.in (GRUB_DISABLE_LINUX_RECOVERY): Export
36640
	variable.
36641
	* util/grub.d/10_linux.in: If GRUB_DISABLE_LINUX_RECOVERY is true,
36642
	don't write a menu entry for recovery mode.
36643
36644
2009-06-20  Robert Millan  <rmh.grub@aybabtu.com>
36645
36646
	* util/i386/pc/grub-mkimage.c (main): Oops, free `output' only
36647
	after it's no longer needed.
36648
36649
2009-06-20  Robert Millan  <rmh.grub@aybabtu.com>
36650
36651
	* include/grub/i386/loader.h (grub_linux_prot_size)
36652
	(grub_linux_tmp_addr, grub_linux_real_addr)
36653
	(grub_linux_is_bzimage, grub_linux16_boot): Declare only on
36654
	GRUB_MACHINE_PCBIOS.
36655
	* util/i386/pc/grub-mkimage.c (compress_kernel): Move
36656
	common grub_util_info() call to ...
36657
	(generate_image): ... here.
36658
	Fix use of uninitialized memory, comparison of signed with
36659
	unsigned integers and memory leak.
36660
	Remove bogus module address message.
36661
36662
2009-06-20  Vladimir Serbinenko  <phcoder@gmail.com>
36663
36664
	* disk/mdraid_linux.c (GRUB_MOD_FINI): use grub_raid_unregister and not
36665
	grub_raid_register
36666
	* disk/dmraid_nvidia.c (GRUB_MOD_FINI): likewise
36667
36668
2009-06-19  Pavel Roskin  <proski@gnu.org>
36669
36670
	* configure.ac: Remove stray AC_MSG_CHECKING.
36671
36672
2009-06-19  Vladimir Serbinenko  <phcoder@gmail.com>
36673
36674
	* disk/scsi.c (grub_scsi_open): use continue instead of big if
36675
36676
2009-06-18  Pavel Roskin  <proski@gnu.org>
36677
36678
	* conf/common.rmk: Add fs_file.mod.
36679
	* disk/fs_file.c: New file.
36680
	* include/grub/disk.h (enum grub_disk_dev_id): Add
36681
	GRUB_DISK_DEVICE_FILE_ID.
36682
36683
2009-06-18  Vladimir Serbinenko  <phcoder@gmail.com>
36684
36685
	Fix build with Apple's toolchain. Part 2
36686
36687
	* aclocal.m4 (grub_PROG_TARGET_CC): add missing prototype for main and
36688
	a fake start
36689
36690
2009-06-18  Vladimir Serbinenko  <phcoder@gmail.com>
36691
36692
	Fix build with Apple's toolchain. Part 1
36693
36694
	* commands/i386/pc/drivemap_int13h.S: use assembly-time constants
36695
	for long calls
36696
	* configure.ac: remove a leftover AC_MSG_RESULT
36697
	(CFLAGS): don't add -Wl,--defsym,___main=0x8100 when building with
36698
	Apple's toolchain
36699
36700
2009-06-18  Vladimir Serbinenko  <phcoder@gmail.com>
36701
36702
	Fix warnings
36703
36704
	* fs/ntfscomp.c (decomp_get16): initialize c1 and c2
36705
	(decomp_block): initialize ch
36706
	use grub_memcpy instead of memcpy
36707
36708
2009-06-17  Pavel Roskin  <proski@gnu.org>
36709
36710
	* include/grub/i386/coreboot/console.h: Don't use the i386-pc
36711
	version, use declarations needed to use vga_text as the startup
36712
	console.
36713
36714
	* conf/i386-coreboot.rmk (kernel_elf_SOURCES): Remove
36715
	term/i386/pc/at_keyboard.c, it doesn't need to be compiled into
36716
	the kernel.
36717
	* kern/i386/coreboot/init.c: Don't call grub_at_keyboard_init()
36718
	and grub_at_keyboard_fini(), it's done on module load and
36719
	unload.
36720
36721
2009-06-17  Felix Zielcke  <fzielcke@z-51.de>
36722
36723
	* loader/i386/linux.c (grub_cmd_linux): Set grub_error if the
36724
	file can't be found.
36725
	* loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
36726
36727
2009-06-17  Vladimir Serbinenko  <phcoder@gmail.com>
36728
36729
	Fix newline handling
36730
36731
	* include/grub/script_sh.h (grub_lexer_param): new field was_newline
36732
	* script/sh/lexer.c (grub_script_lexer_init): initialize was_newline
36733
	(grub_script_yylex): don't segfault on unterminated script
36734
	newline terminates command and variable
36735
36736
2009-06-17  Vladimir Serbinenko  <phcoder@gmail.com>
36737
36738
	avoid double grub_adjust_range call. Bug reported by David Simner
36739
36740
	* kern/disk.c (grub_disk_write): change to raw disk access before
36741
	calling disk_read
36742
36743
2009-06-17  Colin Watson  <cjwatson@ubuntu.com>
36744
36745
	* util/elf/grub-mkimage.c (usage): Prefix each option line with two
36746
	spaces, for the benefit of help2man.
36747
	* util/i386/efi/grub-mkimage.c (usage): Likewise.
36748
36749
2009-06-16  Pavel Roskin  <proski@gnu.org>
36750
36751
	* kern/i386/halt.c: Include grub/machine/init.h.
36752
	* kern/i386/reboot.c: Include grub/cpu/reboot.h.
36753
36754
2009-06-16  Felix Zielcke  <fzielcke@z-51.de>
36755
36756
	* util/grub.d/30_os-prober.in: Use ${root} in the generated
36757
	drivemap menuentry.
36758
36759
2009-06-16  James Jarvis  <James.Jarvis@ed.ac.uk>
36760
36761
	* commands/help.c GRUB_MOD_INIT(echo): Fix the help output of
36762
	`echo' command.
36763
36764
2009-06-16  Pavel Roskin  <proski@gnu.org>
36765
36766
	* boot/i386/pc/boot.S: Remove root_drive.  Assert offset of
36767
	boot_drive_check by using GRUB_BOOT_MACHINE_DRIVE_CHECK.  Don't
36768
	save %dx, we only need %dl and we never change it.
36769
	* boot/i386/pc/cdboot.S: Don't set the root drive.
36770
	* boot/i386/pc/pxeboot.S: Likewise.
36771
	* include/grub/i386/pc/boot.h: Remove
36772
	GRUB_BOOT_MACHINE_ROOT_DRIVE, adjust
36773
	GRUB_BOOT_MACHINE_DRIVE_CHECK.
36774
	* include/grub/i386/pc/kernel.h: Remove grub_root_drive.
36775
	* kern/i386/pc/init.c (make_install_device): Remove references
36776
	to grub_root_drive.
36777
	* kern/i386/pc/startup.S: Likewise.
36778
	* util/i386/pc/grub-setup.c (setup): Don't set root_drive.
36779
36780
2009-06-16  Vladimir Serbinenko  <phcoder@gmail.com>
36781
36782
	xnu_uuid command
36783
36784
	* commands/xnu_uuid.c: new file
36785
	* conf/common.rmk (pkglib_MODULES): add xnu_uuid.mod
36786
	(xnu_uuid_mod_SOURCES): new variable
36787
	(xnu_uuid_mod_CFLAGS): likewise
36788
	(xnu_uuid_mod_LDFLAGS): likewise
36789
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/probe.c
36790
	* conf/i386-ieee1275.rmk: likewise
36791
	* conf/i386-pc.rmk: likewise
36792
	* conf/powerpc-ieee1275.rmk: likewise
36793
	* conf/sparc64-ieee1275.rmk: likewise
36794
	* util/grub.d/30_os-prober.in: use UUID for Mac OS X/Darwin
36795
36796
2009-06-16  Pavel Roskin  <proski@gnu.org>
36797
36798
	* configure.ac: Avoid '==' in test command, it's not portable.
36799
36800
2009-06-16  Vladimir Serbinenko  <phcoder@gmail.com>
36801
36802
	Probe command
36803
36804
	* commands/probe.c: new file
36805
	* conf/common.rmk (pkglib_MODULES): add probe.mod
36806
	(probe_mod_SOURCES): new variable
36807
	(probe_mod_CFLAGS): likewise
36808
	(probe_mod_LDFLAGS): likewise
36809
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/probe.c
36810
	* conf/i386-ieee1275.rmk: likewise
36811
	* conf/i386-pc.rmk: likewise
36812
	* conf/powerpc-ieee1275.rmk: likewise
36813
	* conf/sparc64-ieee1275.rmk: likewise
36814
36815
2009-06-15  Vladimir Serbinenko  <phcoder@gmail.com>
36816
36817
	Fix handling of string like \"hello\" and "a
36818
	b"
36819
36820
	* script/sh/lexer.c (check_textstate): accept GRUB_PARSER_STATE_ESC
36821
	(grub_script_yylex): fix parsing of quoting, escaping and newline
36822
36823
2009-06-13  Vladimir Serbinenko  <phcoder@gmail.com>
36824
36825
	* loader/i386/multiboot.c (grub_multiboot_get_bootdev): fix partition
36826
	handling
36827
36828
2009-06-13  Jun Inoue  <jun.lambda@gmail.com>
36829
36830
	* util/grub-mkconfig.in: Fix parsing of --output option.
36831
36832
2009-06-12  Pavel Roskin  <proski@gnu.org>
36833
36834
	* Makefile.in (pkgdata_SRCDIR): Remove.  genmodsrc.sh and
36835
	genmk.rb don't need to be generated or installed.
36836
36837
2009-06-12  Vladimir Serbinenko  <phcoder@gmail.com>
36838
36839
	* commands/i386/pc/drivemap_int13h.S: add more comments
36840
36841
2009-06-11  Pavel Roskin  <proski@gnu.org>
36842
36843
	* Makefile.in (uninstall): Uninstall manuals.
36844
36845
	* Makefile.in: Rename lib_DATA to lib_SCRIPTS, move it from
36846
	PKGLIB to SCRIPTS.  This fixes installation of grub-mkconfig_lib
36847
	and update-grub_lib in two places.
36848
	* conf/common.rmk: Rename lib_DATA to lib_SCRIPTS.
36849
36850
	* disk/usbms.c (grub_usbms_transfer): Initialize `err' to fix
36851
	a compiler warning.
36852
36853
	* loader/i386/bsd.c (grub_freebsd_boot): Rename `entry' to
36854
	`entry_lo' to fix variable shadowing.
36855
36856
2009-06-11  Christian Franke  <franke@computer.org>
36857
36858
	* kern/misc.c (__enable_execute_stack): Add missing return type
36859
	to prevent gcc warning.
36860
36861
2009-06-11  Felix Zielcke  <fzielcke@z-51.de>
36862
36863
	* conf/i386-ieee1275.rmk (COMMON_LDFLAGS): Remove `-static -lgcc'.
36864
36865
2009-06-11  Pavel Roskin  <proski@gnu.org>
36866
36867
	* Makefile.in: Don't rely on any scripts being executable.
36868
	Always use $(SHELL) to run shell scripts.
36869
36870
	* configure.ac: Always define ___main if using -nostdlib.  This
36871
	fixes tests on Cygwin.
36872
36873
2009-06-11  Giuseppe Caizzone  <acaizzo@gmail.com>
36874
36875
	UDF fix
36876
36877
	* fs/udf.c (grub_udf_read_block): handle the fact that ad->length
36878
	is in bytes and not in blocks
36879
36880
2009-06-11  Pavel Roskin  <proski@gnu.org>
36881
36882
	* kern/i386/halt.c (grub_halt): Make `i' unsigned to fix a
36883
	warning.
36884
36885
2009-06-11  Felix Zielcke  <fzielcke@z-51.de>
36886
36887
	* util/grub.d/30_os-prober.in: Fix a comment. Source
36888
	${libdir}/grub/grub-mkconfig_lib.  Use prepare_grub_to_access_device
36889
	to set the root device.  Place drivemap command in the generated
36890
	chain entry.
36891
36892
2009-06-11  Pavel Roskin  <proski@gnu.org>
36893
36894
	* configure.ac: Remove host_m32.  Issues with 64-bit utilities
36895
	have long been resolved.
36896
36897
2009-06-11  Colin Watson  <cjwatson@ubuntu.com>
36898
36899
	* util/grub.d/10_linux.in: Capitalise "Linux".
36900
36901
	* util/grub-pe2elf.c (usage): Fix references to grub-editenv.
36902
36903
2009-06-11  Pavel Roskin  <proski@gnu.org>
36904
36905
	* kern/efi/efi.c (grub_exit): Add infinite loop at the end to
36906
	fix a gcc warning and ensure that the function won't ever exit.
36907
36908
	* kern/i386/ieee1275/init.c: Add missing prototype for
36909
	grub_stop_floppy().
36910
36911
	* loader/ieee1275/multiboot2.c [__i386__]: Include
36912
	grub/cpu/multiboot.h.
36913
36914
	* term/i386/pc/serial.c (serial_translate_key_sequence): Avoid
36915
	casts to short - they are not portable and cause warnings.  Fix
36916
	use of uninitialized values in input_buf.  Use ARRAY_SIZE.
36917
36918
2009-06-11  Vladimir Serbinenko  <phcoder@gmail.com>
36919
36920
	Drivemap fixes
36921
36922
	* commands/i386/pc/drivemap.c (grub_get_root_biosnumber_drivemap):
36923
	new function
36924
	(grub_get_root_biosnumber_saved): new variable
36925
	(GRUB_MOD_INIT): register grub_get_root_biosnumber_drivemap
36926
	(GRUB_MOD_FINI): unregister grub_get_root_biosnumber_drivemap
36927
	* commands/i386/pc/drivemap_int13h.S (grub_drivemap_handler): restore
36928
	%dx after the call if necessary
36929
	* conf/common.rmk (pkglib_MODULES): remove boot.mod
36930
	(boot_mod_SOURCES): remove
36931
	(boot_mod_CFLAGS): remove
36932
	(boot_mod_LDFLAGS): remove
36933
	* conf/i386-coreboot.rmk (pkglib_MODULES): add boot.mod
36934
	(boot_mod_SOURCES): new variable
36935
	(boot_mod_CFLAGS): likewise
36936
	(boot_mod_LDFLAGS): likewise
36937
	* conf/i386-efi.rmk: likewise
36938
	* conf/i386-ieee1275.rmk: likewise
36939
	* conf/i386-pc.rmk: likewise
36940
	* conf/powerpc-ieee1275.rmk: likewise
36941
	* conf/sparc64-ieee1275.rmk: likewise
36942
	* conf/x86_64-efi.rmk: likewise
36943
	* include/grub/i386/pc/biosnum.h: new file
36944
	* lib/i386/pc/biosnum.c: likewise
36945
	* loader/i386/bsd.c (grub_bsd_get_device): use grub_get_root_biosnumber
36946
	* loader/i386/multiboot.c (grub_multiboot_get_bootdev): likewise
36947
	* loader/i386/pc/chainloader.c (grub_chainloader_cmd): likewise
36948
36949
2009-06-10  Pavel Roskin  <proski@gnu.org>
36950
36951
	* io/gzio.c (test_header): Don't reuse one buffer for all data.
36952
	Use separate variables.  Read only the file size at the end, but
36953
	not the checksum that we don't use.
36954
36955
	* kern/file.c (grub_file_read): Use void pointer for the buffer.
36956
	Adjust all callers.
36957
36958
	* kern/ieee1275/openfw.c: Remove libc includes.
36959
	* kern/ieee1275/cmain.c: Likewise.
36960
	* include/grub/ieee1275/ieee1275.h: Likewise.
36961
36962
	* kern/i386/coreboot/init.c: Include grub/cpu/tsc.h to fix
36963
	compiler warnings.
36964
36965
2009-06-10  Felix Zielcke  <fzielcke@z-51.de>
36966
17.2.14 by Robert Millan, Felix Zielcke, Robert Millan
* New SVN snapshot.
36967
	* Makefile.in: Remove all trailing whitespace.
36968
	* conf/i386-pc.rmk: Likewise.
36969
	* conf/powerpc-ieee1275.rmk: Likewise.
36970
	* conf/sparc64-ieee1275.rmk: Likewise.
36971
	* docs/grub.texi: Likewise.
36972
	* docs/texinfo.tex: Likewise.
36973
	* disk/fs_uuid.c: Likewise.
36974
	* disk/lvm.c: Likewise.
36975
	* disk/scsi.c: Likewise.
36976
	* disk/ata.c: Likewise.
36977
	* disk/ieee1275/ofdisk.c: Likewise.
36978
	* disk/i386/pc/biosdisk.c: Likewise.
36979
	* disk/host.c: Likewise.
36980
	* disk/raid.c: Likewise.
36981
	* disk/efi/efidisk.c: Likewise.
36982
	* disk/usbms.c: Likewise.
36983
	* disk/memdisk.c: Likewise.
36984
	* disk/loopback.c: Likewise.
36985
	* kern/powerpc/dl.c: Likewise.
36986
	* kern/device.c: Likewise.
36987
	* kern/dl.c: Likewise.
36988
	* kern/sparc64/dl.c: Likewise.
36989
	* kern/ieee1275/ieee1275.c: Likewise.
36990
	* kern/term.c: Likewise.
36991
	* kern/fs.c: Likewise.
36992
	* kern/i386/dl.c: Likewise.
36993
	* kern/i386/pc/startup.S: Likewise.
36994
	* kern/i386/pc/init.c: Likewise.
36995
	* kern/i386/pc/mmap.c: Likewise.
36996
	* kern/i386/pc/lzo1x.S: Likewise.
36997
	* kern/i386/ieee1275/init.c: Likewise.
36998
	* kern/i386/realmode.S: Likewise.
36999
	* kern/i386/tsc.c: Likewise.
37000
	* kern/partition.c: Likewise.
37001
	* kern/corecmd.c: Likewise.
37002
	* kern/file.c: Likewise.
37003
	* kern/efi/efi.c: Likewise.
37004
	* kern/efi/init.c: Likewise.
37005
	* kern/efi/mm.c: Likewise.
37006
	* kern/main.c: Likewise.
37007
	* kern/err.c: Likewise.
37008
	* kern/env.c: Likewise.
37009
	* kern/disk.c: Likewise.
37010
	* kern/generic/millisleep.c: Likewise.
37011
	* kern/generic/rtc_get_time_ms.c: Likewise.
37012
	* kern/misc.c: Likewise.
37013
	* kern/parser.c: Likewise.
37014
	* genmk.rb: Likewise.
37015
	* configure.ac: Likewise.
37016
	* boot/i386/pc/diskboot.S: Likewise.
37017
	* boot/i386/pc/pxeboot.S: Likewise.
37018
	* boot/i386/pc/boot.S: Likewise.
37019
	* boot/i386/pc/lnxboot.S: Likewise.
37020
	* boot/i386/pc/cdboot.S: Likewise.
37021
	* parttool/pcpart.c: Likewise.
37022
	* video/readers/tga.c: Likewise.
37023
	* video/video.c: Likewise.
37024
	* video/bitmap.c: Likewise.
37025
	* lib/envblk.c: Likewise.
37026
	* lib/i386/setjmp.S: Likewise.
37027
	* fs/xfs.c: Likewise.
37028
	* fs/afs.c: Likewise.
37029
	* fs/fat.c: Likewise.
37030
	* fs/ntfs.c: Likewise.
37031
	* fs/udf.c: Likewise.
37032
	* fs/affs.c: Likewise.
37033
	* fs/iso9660.c: Likewise.
37034
	* fs/hfs.c: Likewise.
37035
	* fs/fshelp.c: Likewise.
37036
	* fs/ext2.c: Likewise.
37037
	* fs/jfs.c: Likewise.
37038
	* fs/reiserfs.c: Likewise.
37039
	* fs/hfsplus.c: Likewise.
37040
	* fs/minix.c: Likewise.
37041
	* fs/cpio.c: Likewise.
37042
	* fs/sfs.c: Likewise.
37043
	* fs/ufs.c: Likewise.
37044
	* efiemu/prepare.c: Likewise.
37045
	* efiemu/loadcore_common.c: Likewise.
37046
	* efiemu/runtime/efiemu.sh: Likewise.
37047
	* efiemu/runtime/efiemu.S: Likewise.
37048
	* efiemu/runtime/efiemu.c: Likewise.
37049
	* efiemu/pnvram.c: Likewise.
37050
	* efiemu/main.c: Likewise.
37051
	* efiemu/i386/pc/cfgtables.c: Likewise.
37052
	* efiemu/i386/loadcore64.c: Likewise.
37053
	* efiemu/i386/loadcore32.c: Likewise.
37054
	* efiemu/loadcore.c: Likewise.
37055
	* efiemu/symbols.c: Likewise.
37056
	* efiemu/mm.c: Likewise.
37057
	* include/grub/autoefi.h: Likewise.
37058
	* include/grub/datetime.h: Likewise.
37059
	* include/grub/term.h: Likewise.
37060
	* include/grub/hfs.h: Likewise.
37061
	* include/grub/lvm.h: Likewise.
37062
	* include/grub/i386/tsc.h: Likewise.
37063
	* include/grub/i386/linux.h: Likewise.
37064
	* include/grub/i386/xnu.h: Likewise.
37065
	* include/grub/i386/efiemu.h: Likewise.
37066
	* include/grub/i386/pc/biosdisk.h: Likewise.
37067
	* include/grub/i386/pc/memory.h: Likewise.
37068
	* include/grub/i386/pc/vbe.h: Likewise.
37069
	* include/grub/parttool.h: Likewise.
37070
	* include/grub/video.h: Likewise.
37071
	* include/grub/memory.h: Likewise.
37072
	* include/grub/fs.h: Likewise.
37073
	* include/grub/partition.h: Likewise.
37074
	* include/grub/xnu.h: Likewise.
37075
	* include/grub/efi/api.h: Likewise.
37076
	* include/grub/efi/pe32.h: Likewise.
37077
	* include/grub/efi/memory.h: Likewise.
37078
	* include/grub/multiboot.h: Likewise.
37079
	* include/grub/usbdesc.h: Likewise.
37080
	* include/grub/multiboot2.h: Likewise.
37081
	* include/grub/acpi.h: Likewise.
37082
	* include/grub/efiemu/efiemu.h: Likewise.
37083
	* include/grub/disk.h: Likewise.
37084
	* include/grub/ieee1275/ieee1275.h: Likewise.
37085
	* include/grub/net.h: Likewise.
37086
	* include/grub/machoload.h: Likewise.
37087
	* include/grub/macho.h: Likewise.
37088
	* include/multiboot.h: Likewise.
37089
	* genmoddep.awk: Likewise.
37090
	* normal/main.c: Likewise.
37091
	* normal/menu_entry.c: Likewise.
37092
	* normal/menu_viewer.c: Likewise.
37093
	* normal/completion.c: Likewise.
37094
	* normal/cmdline.c: Likewise.
37095
	* normal/misc.c: Likewise.
37096
	* normal/datetime.c: Likewise.
37097
	* bus/usb/usbtrans.c: Likewise.
37098
	* bus/usb/ohci.c: Likewise.
37099
	* bus/usb/uhci.c: Likewise.
37100
	* bus/usb/usb.c: Likewise.
37101
	* mmap/efi/mmap.c: Likewise.
37102
	* mmap/i386/pc/mmap_helper.S: Likewise.
37103
	* mmap/i386/pc/mmap.c: Likewise.
37104
	* mmap/i386/mmap.c: Likewise.
37105
	* mmap/i386/uppermem.c: Likewise.
37106
	* mmap/mmap.c: Likewise.
37107
	* commands/acpi.c: Likewise.
37108
	* commands/echo.c: Likewise.
37109
	* commands/blocklist.c: Likewise.
37110
	* commands/loadenv.c: Likewise.
37111
	* commands/usbtest.c: Likewise.
37112
	* commands/boot.c: Likewise.
37113
	* commands/parttool.c: Likewise.
37114
	* commands/search.c: Likewise.
37115
	* commands/cat.c: Likewise.
37116
	* commands/i386/pc/play.c: Likewise.
37117
	* commands/i386/pc/drivemap.c: Likewise.
37118
	* commands/i386/pc/vbeinfo.c: Likewise.
37119
	* commands/i386/pc/acpi.c: Likewise.
37120
	* commands/i386/pc/vbetest.c: Likewise.
37121
	* commands/ls.c: Likewise.
37122
	* commands/cmp.c: Likewise.
37123
	* commands/test.c: Likewise.
37124
	* commands/efi/acpi.c: Likewise.
37125
	* commands/gptsync.c: Likewise.
37126
	* commands/help.c: Likewise.
37127
	* partmap/amiga.c: Likewise.
37128
	* partmap/apple.c: Likewise.
37129
	* partmap/acorn.c: Likewise.
37130
	* partmap/pc.c: Likewise.
37131
	* partmap/sun.c: Likewise.
37132
	* partmap/gpt.c: Likewise.
37133
	* script/sh/lexer.c: Likewise.
37134
	* script/sh/function.c: Likewise.
37135
	* font/font.c: Likewise.
37136
	* font/font_cmd.c: Likewise.
37137
	* loader/powerpc/ieee1275/linux.c: Likewise.
37138
	* loader/efi/chainloader.c: Likewise.
37139
	* loader/multiboot_loader.c: Likewise.
37140
	* loader/macho.c: Likewise.
37141
	* loader/i386/multiboot.c: Likewise.
37142
	* loader/i386/linux.c: Likewise.
37143
	* loader/i386/pc/linux.c: Likewise.
37144
	* loader/i386/pc/multiboot2.c: Likewise.
37145
	* loader/i386/pc/chainloader.c: Likewise.
37146
	* loader/i386/pc/xnu.c: Likewise.
37147
	* loader/i386/bsd_trampoline.S: Likewise.
37148
	* loader/i386/efi/linux.c: Likewise.
37149
	* loader/i386/multiboot_elfxx.c: Likewise.
37150
	* loader/i386/bsd_helper.S: Likewise.
37151
	* loader/i386/bsd.c: Likewise.
37152
	* loader/i386/linux_trampoline.S: Likewise.
37153
	* loader/i386/xnu_helper.S: Likewise.
37154
	* loader/i386/xnu.c: Likewise.
37155
	* loader/i386/bsd_pagetable.c: Likewise.
37156
	* loader/i386/multiboot_helper.S: Likewise.
37157
	* loader/xnu.c: Likewise.
37158
	* loader/xnu_resume.c: Likewise.
37159
	* io/gzio.c: Likewise.
37160
	* term/efi/console.c: Likewise.
37161
	* term/terminfo.c: Likewise.
37162
	* term/ieee1275/ofconsole.c: Likewise.
37163
	* term/i386/pc/serial.c: Likewise.
37164
	* term/i386/pc/vesafb.c: Likewise.
37165
	* term/i386/pc/vga.c: Likewise.
37166
	* term/usb_keyboard.c: Likewise.
37167
	* term/gfxterm.c: Likewise.
37168
	* aclocal.m4: Likewise.
37169
	* util/lvm.c: Likewise.
37170
	* util/grub.d/30_os-prober.in: Likewise.
37171
	* util/grub.d/10_hurd.in: Likewise.
37172
	* util/console.c: Likewise.
37173
	* util/grub-macho2img.c: Likewise.
37174
	* util/grub-probe.c: Likewise.
37175
	* util/hostfs.c: Likewise.
37176
	* util/i386/pc/grub-mkimage.c: Likewise.
37177
	* util/i386/pc/grub-setup.c: Likewise.
37178
	* util/i386/efi/grub-mkimage.c: Likewise.
37179
	* util/grub-mkconfig.in: Likewise.
37180
	* util/raid.c: Likewise.
37181
	* util/resolve.c: Likewise.
37182
	* util/grub-mkdevicemap.c: Likewise.
37183
	* util/grub-emu.c: Likewise.
37184
	* util/getroot.c: Likewise.
37185
	* util/hostdisk.c: Likewise.
37186
	* util/usb.c: Likewise.
37187
	* util/grub-editenv.c: Likewise.
37188
	* util/misc.c: Likewise.
37189
37190
2009-06-10  Felix Zielcke  <fzielcke@z-51.de>
37191
17.2.9 by Robert Millan
* New SVN snapshot.
37192
	* gendistlist.sh (EXTRA_DISTFILES): Add `genhandlerlist.sh' and
37193
	`genparttoollist.sh'.
37194
	(DISTDIRS): Add `efiemu', `mmap', `parttool' and `script'.
37195
	Add `*.sh' to the list find searches for and change `mdate.sh'
37196
	to `mdate-sh'.
37197
37198
2009-06-10  Pavel Roskin  <proski@gnu.org>
37199
37200
	* include/grub/multiboot2.h: Provide compatibility defines for
37201
	multiboot2.h.
37202
	* include/multiboot2.h: Include stdint.h only if needed, using
37203
	angle brackets.
37204
	* loader/i386/pc/multiboot2.c: Include multiboot2.h after
37205
	grub/multiboot2.h.
37206
	* loader/ieee1275/multiboot2.c: Likewise.
37207
	* loader/multiboot2.c: Likewise.
37208
	* loader/multiboot_loader.c: Likewise.
37209
37210
	* configure.ac: Use -nostdlib when probing for the target.  It
37211
	should not be required to have libc for the target.
37212
37213
	* configure.ac: Remove checks for __bswapsi2 and __bswapdi2,
37214
	they fail without libc headers for the target.
37215
	* include/grub/powerpc/libgcc.h: Use weak attribute for all
37216
	exports.
37217
	* include/grub/sparc64/libgcc.h: Likewise.  Don't use
37218
	preprocessor conditionals.
37219
37220
	* conf/common.rmk: Compile tar.mod from tar.c, not cpio.c.  The
37221
	build system doesn't need to be aware of the tar.c internals.
37222
37223
2009-06-09  Michel Hermier  <michel.hermier@gmail.com>
37224
37225
	* fs/i386/pc/pxe.c (grub_pxefs_read): Fix returned values.
37226
37227
2009-06-09  Robert Millan  <rmh.grub@aybabtu.com>
37228
37229
	* util/deviceiter.c (grub_util_iterate_devices): Increase number of
37230
	disk limit to 26 for IDE, Virtio, Xen and SCSI.
37231
37232
2009-06-09  Felix Zielcke  <fzielcke@z-51.de>
37233
37234
	* util/i386/pc/grub-install.in: Change the error message if UUIDs
37235
	aren't available if ata.mod gets used.
37236
37237
2009-06-09  Oliver Henshaw  <oliver.henshaw@gmail.com>
37238
37239
	* bus/usb/ohci.c (grub_ohci_pci_iter): Link struct only after
37240
	initialising controller.
37241
	* bus/usb/uhci.c (grub_uhci_pci_iter): Likewise.
37242
37243
2009-06-08  Felix Zielcke  <fzielcke@z-51.de>
37244
37245
	* util/i386/pc/grub-install.in: Add a parameter --disk-module
37246
	to choose between ata and biosdisk module on i386-pc.
37247
37248
2009-06-08  Oliver Henshaw  <oliver.henshaw@gmail.com>
37249
37250
	* bus/usb/ohci.c (grub_ohci_pci_iter): Define the Class,
37251
	Subclass and Programming Interface fields in terms of the 3 byte
37252
	Class Code register.
37253
	* bus/usb/uhci.c (grub_uhci_pci_iter): Likewise.
37254
37255
	* bus/usb/ohci.c (grub_ohci_pci_iter): Check that programming
37256
	interface is OHCI.  Add grub_dprintf for symmetry with
37257
	bus/usb/uhci.c.
37258
	* bus/usb/uhci.c (grub_uhci_pci_iter): Check that programming
37259
	interface is UHCI.  Add interf variable for programming
37260
	interface.  Print interface with class/subclass.
37261
37262
	* bus/usb/ohci.c: Set interf with correct field.
37263
37264
	* bus/usb/uhci.c: Remove unneeded doubled lines.
37265
	* bus/usb/ohci.c: Likewise. Change interf to grub_uint32_t.
37266
	Remove whitespace inside comment.
37267
37268
2009-06-08  Robert Millan  <rmh.grub@aybabtu.com>
37269
37270
	* loader/i386/linux.c (grub_cmd_linux): When processing `vga=', use
37271
	as fallback an equivalent option without depth.
37272
37273
2009-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
37274
37275
	Not fail if unable to retrieve C/H/S on LBA disks
37276
37277
	* disk/i386/pc/biosdisk.c (grub_biosdisk_open): behave gracefully
37278
	if unable to retrieve C/H/S on LBA disks
37279
37280
2009-06-08  Pavel Roskin  <proski@gnu.org>
37281
37282
	* fs/hfs.c (grub_hfs_find_dir): Use union to avoid a warning
37283
	about aliasing.
37284
37285
2009-06-08  Felix Zielcke  <fzielcke@z-51.de>
37286
37287
	* Makefile.in (uninstall): Remove all $lib_DATA files.
37288
37289
2009-06-08  Vladimir Serbinenko  <phcoder@gmail.com>
37290
37291
	Bugfix: install on partitionless device
37292
37293
	* util/hostdisk.c (grub_util_biosdisk_get_grub_dev): check if os_dev
37294
	is a whole disk
37295
37296
2009-06-08  Felix Zielcke  <fzielcke@z-51.de>
37297
37298
	* Makefile.in (uninstall): Remove all $include_DATA files.
37299
37300
2009-06-08  Felix Zielcke  <fzielcke@z-51.de>
37301
37302
	* commands/true.c: New file.  Implement the true and false commands.
37303
	* conf/common.rmk.c (pkglib_MODULES): Add `true.mod'.
37304
	(true_mod_SOURCES): New variable.
37305
	(true_mod_CFLAGS): Likewise.
37306
	(true_mod_LDFLAGS): Likewise.
37307
37308
2009-06-05  Colin D Bennett  <colin@gibibit.com>
37309
37310
	Optimized font character lookup using binary search instead of linear
37311
	search.  Fonts now are required to have the character index ordered by
37312
	code point.
37313
37314
	* font/font.c (load_font_index): Verify that fonts have ordered
37315
	character indices.
37316
	(find_glyph): Use binary search instead of linear search to find a
37317
	character in a font.
37318
37319
2009-06-05  Michael Scherer  <misc@mandriva.org>
37320
37321
	* fs/hfsplus.c (grub_hfsplus_mount): Determine if the filesystem
37322
	uses case sensitive btree.
37323
	(grub_hfsplus_iterate_dir): Use GRUB_FSHELP_CASE_INSENSITIVE
37324
	only for case insensitive filesystems.
37325
37326
2009-06-05  Vladimir Serbinenko  <phcoder@gmail.com>
37327
37328
	* conf/i386-pc.rmk (efiemu_mod_CFLAGS): remove -Werror -Wall
37329
	* conf/common.rmk (search_mod_CFLAGS): likewise
37330
37331
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37332
37333
	* kern/i386/pc/startup.S [APPLE_CC]: block of nops to
37334
	compensate a compiler bug
37335
37336
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37337
37338
	* include/grub/term.h (GRUB_TERM_BACKSPACE): explicitly define as 8
37339
	instead of '\b'
37340
37341
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37342
37343
	Definitions for creating asm symbols with Apple's CC
37344
37345
	* include/grub/symbol.h [APPLE_CC] (FUNCTION): new macro
37346
	[APPLE_CC] (VARIABLE): likewise
37347
37348
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37349
37350
	Disable lnxboot.img when compiled
37351
	with Apple's CC
37352
37353
	* conf/i386-pc.rmk (pkglib_IMAGES): remove lnxboot.img
37354
	pkglib_IMAGES [! TARGET_APPLE_CC] (pkglib_IMAGES): add lnxboot.img
37355
	* boot/i386/pc/lnxboot.S [APPLE_CC]: define an #error
37356
	[! APPLE_CC] (CODE_LENG): skip
37357
	[! APPLE_CC] (setup_sects): likewise
37358
	[! APPLE_CC]: skip filling
37359
37360
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37361
37362
	Address in trampolines based on 32-bit registers when compiled
37363
	with Apple's CC
37364
37365
	* loader/i386/xnu_helper.S [APPLE_CC]: use 32-bit registers
37366
	for addresses
37367
	* loader/i386/linux_trampoline.S [APPLE_CC]: likewise
37368
37369
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37370
37371
	Avoid aliases when compiling with Apple's CC for PCBIOS machine
37372
37373
	* kern/misc.c [APPLE_CC] (memcpy): new function
37374
	[APPLE_CC] (memmove): likewise
37375
	[APPLE_CC && !GRUB_UTIL] (grub_err_printf): likewise
37376
	(memcpy): define alias conditionally on !APPLE_CC
37377
	(memset): likewise
37378
	(abort): likewise
37379
	* include/grub/misc.h (memove): don't define when both GRUB_UTIL and
37380
	APPLE_CC are defined
37381
	* include/grub/list.h [APPLE_CC] (grub_assert_fail): new function
37382
	(grub_assert_fail): make prototype conditional
37383
37384
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37385
37386
	Use grub-macho2img when compiling with Apple's CC for PCBIOS machine
37387
37388
	* conf/common.rmk (bin_UTILITIES): add (on false on condition)
37389
	grub-macho2img
37390
	(CLEANFILES): add grub-macho2img
37391
	(grub_macho2img_SOURCES): new variable
37392
	* kern/i386/pc/startup.S (bss_start): new variable
37393
	(bss_end): likewise
37394
	* genmk.rb: use grub-macho2img for *.img when compiled with Apple's CC
37395
	* util/grub-macho2img.c: new file
37396
37397
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37398
37399
	Use objconv when compiling with Apple's CC
37400
37401
	* conf/i386-pc.rmk (efiemu32.o): use OBJCONV if defined
37402
	(efiemu64.o): likewise
37403
	(efiemu64_c.o): omit -mcmodel=large and add -DAPPLE_CC=1
37404
	when compiling with Apple's CC
37405
	(efiemu64_s.o): likewise
37406
	* configure.ac: check for objconv when compiling with Apple's CC
37407
	* genmk.rb: use objconv for modules when compiled with Apple's CC
37408
37409
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37410
37411
	Define segment as well as section when compiling with
37412
	Apple's CC
37413
37414
	* efiemu/runtime/efiemu.c (PHYSICAL_ATTRIBUTE): new definition
37415
	(efiemu_set_virtual_address_map): declare with PHYSICAL_ATTRIBUTE
37416
	(efiemu_convert_pointer): likewise
37417
	(efiemu_set_virtual_address_map): likewise
37418
	(efiemu_convert_pointer): likewise
37419
	(efiemu_getcrc32): likewise
37420
	(init_crc32_table): likewise
37421
	(reflect): likewise
37422
	* include/grub/dl.h (GRUB_MOD_NAME): define segment with Apple's CC
37423
	(GRUB_MOD_DEP): likewise
37424
37425
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37426
37427
	Allow a compilation without -mcmodel=large
37428
37429
	* kern/efi/mm.c (grub_efi_allocate_pages): don't allocate >4GiB
37430
	when compiled without -mcmodel=large
37431
	(filter_memory_map): remove memory post 4 GiB when compiled
37432
	without -mcmodel=large
37433
	* configure.ac: fail gracefully and add -DMCMODEL_SMALL=1 to
37434
	TARGET_CFLAGS when -mcmodel=large isn't supported
37435
37436
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37437
37438
	Remove nested functions in efiemu core
37439
37440
	* efiemu/runtime/efiemu.c (reflect): make static instead of nested
37441
37442
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37443
37444
	Avoid clobbering %ebx/%rbx in inline assembly with Apple's CC
37445
37446
	* efiemu/runtime/efiemu.c (write_cmos): use %cl instead of %bl as
37447
	temporary storage
37448
	* include/grub/i386/tsc.h (grub_get_tsc): restore %rbx/%ebx when
37449
	using Apple's CC
37450
	(grub_cpu_is_tsc_supported): likewise
37451
	* loader/i386/xnu.c (guessfsb): restore %rbx/%ebx in inline assembly
37452
37453
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37454
37455
	Absolute addressing through constant with Apple's cc
37456
37457
	* kern/i386/pc/startup.S: Define necessary constants
37458
	and address through it when using ABS with Apple's CC
37459
	* boot/i386/pc/diskboot.S: likewise
37460
	* boot/i386/pc/boot.S: likewise
37461
	* boot/i386/pc/lnxboot.S: likewise
37462
	* boot/i386/pc/cdboot.S: likewise
37463
	* mmap/i386/pc/mmap_helper.S: likewise
37464
	* commands/i386/pc/drivemap_int13h.S: likewise
37465
37466
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37467
37468
	Check if compiler is apple cc
37469
37470
	* Makefile.in (ASFLAGS): new variable
37471
	(TARGET_ASFLAGS): likewise
37472
	(TARGET_MODULE_FORMAT): likewise
37473
	(TARGET_APPLE_CC): likewise
37474
	(OBJCONV): likewise
37475
	(TARGET_IMG_CFLAGS): likewise
37476
	(TARGET_CPPFLAGS): add includedir
37477
	* configure.ac: call grub_apple_cc and grub_apple_target_cc
37478
	(TARGET_IMG_LDFLAGS): Add -Wl,-Ttext,. All users updated
37479
	Check for linker script only if compiler isn't Apple's CC
37480
	(TARGET_MODULE_FORMAT): set
37481
	(TARGET_APPLE_CC): likewise
37482
	(TARGET_ASFLAGS): likewise
37483
	(ASFLAGS): likewise
37484
	Check for objcopy only if compiler isn't Apple's CC
37485
	Check for BSS symbol only if compiler isn't Apple's CC
37486
	* genmk.rb: adapt nm options if we use Apple's utils
37487
	* aclocal.m4 (grub_apple_cc): new test
37488
	(grub_apple_target_cc): likewise
37489
37490
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37491
37492
	Simplify sed expressions and improve awk
37493
37494
	* Makefile.in (install-local): simplify sed expression
37495
	* gencmdlist.sh: likewise
37496
	* genmoddep.awk: avoid adding module as a dependency of itself
37497
37498
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37499
37500
	Add missing start symbols
37501
37502
	* boot/i386/pc/boot.S: add start
37503
	* boot/i386/pc/pxeboot.S: likewise
37504
37505
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37506
37507
	Fix wrong assumptions with grub-mkimage on EFI
37508
37509
	* i386/efi/grub-mkimage.c (read_kernel_module): don't write prefix here
37510
	(relocate_addresses): consider both r_addend and value at offset
37511
	(make_mods_section): zerofill modinfo and header
37512
	(convert_elf): write prefix here
37513
37514
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37515
37516
	Use .asciz instead of .string
37517
37518
	* i386/pc/diskboot.S: use .asciz instead of .string
37519
	* i386/pc/boot.S: likewise
37520
	* include/grub/dl.h (GRUB_MOD_DEP): likewise
37521
	(GRUB_MOD_NAME): likewise
37522
37523
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37524
37525
	gfxpayload support
37526
37527
	* commands/videotest.c (grub_cmd_videotest): use grub_video_set_mode
37528
	* include/grub/video.h (GRUB_VIDEO_MODE_TYPE_PURE_TEXT): new definition
37529
	(grub_video_setup): remove
37530
	(grub_video_set_mode): new prototype
37531
	* loader/i386/linux.c (DEFAULT_VIDEO_MODE): new definition
37532
	(vid_mode): remove
37533
	(linux_vesafb_res): compile only on PCBIOS
37534
	(grub_linux_boot): support gfxpayload
37535
	* loader/i386/pc/xnu.c (video_hook): new function
37536
	(grub_xnu_set_video): support gfxpayload
37537
	* term/gfxterm.c (DEFAULT_VIDEO_WIDTH): removed
37538
	(DEFAULT_VIDEO_HEIGHT): likewise
37539
	(DEFAULT_VIDEO_FLAGS): likewise
37540
	(DEFAULT_VIDEO_MODE): new definition
37541
	(video_hook): new function
37542
	(grub_gfxterm_init): use grub_video_set_mode
37543
	* util/grub.d/30_os-prober.in: remove explicit modesetting before
37544
	loading xnu
37545
	* video/video.c (grub_video_setup): removed
37546
	(grub_video_set_mode): new function based on grub_gfxterm_init and
37547
	grub_video_setup
37548
37549
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37550
37551
	Avoid calling biosdisk in drivemap
37552
37553
	* commands/i386/pc/drivemap.c (parse_biosdisk): remove
37554
	(revparse_biosdisk): likewise
37555
	(list_mappings): derive name from id directly
37556
	(grub_cmd_drivemap): use tryparse_diskstring
37557
37558
2009-06-04  Vladimir Serbinenko  <phcoder@gmail.com>
37559
37560
	Script fixes
37561
37562
	* include/grub/script_sh.h (grub_script_cmdline): remove cmdline
37563
	(grub_lexer_param): add tokenonhold
37564
	(grub_script_create_cmdline): remove cmdline. All callers updated
37565
	(grub_script_function_create): make functionname
37566
	grub_script_arg. All callers updated
37567
	(grub_script_execute_argument_to_string): new prototype
37568
	* kern/parser.c (state_transitions): reorder
37569
	(grub_parser_cmdline_state): fix a bug and make more compact
37570
	* script/sh/execute.c (grub_script_execute_argument_to_string):
37571
	make global
37572
	(grub_script_execute_cmdline): use new format
37573
	* script/sh/function.c (grub_script_function_create): make functionname
37574
	grub_script_arg. All callers updated
37575
	* script/sh/lexer.c (grub_script_lexer_init): initialize tokenonhold
37576
	(grub_script_yylex): remove
37577
	(grub_script_yylex2): renamed to ...
37578
	(grub_script_yylex): ...renamed
37579
	parse the expressions like a${b}c
37580
	* script/sh/parser.y (GRUB_PARSER_TOKEN_ARG): new typed terminal
37581
	(GRUB_PARSER_TOKEN_VAR): remove
37582
	(GRUB_PARSER_TOKEN_NAME): likewise
37583
	("if"): declare as typeless
37584
	("while"): likewise
37585
	("function"): likewise
37586
	("else"): likewise
37587
	("then"): likewise
37588
	("fi"): likewise
37589
	(text): remove
37590
	(argument): likewise
37591
	(script): accept empty scripts and make exit on error
37592
	(arguments): use GRUB_PARSER_TOKEN_ARG
37593
	(function): likewise
37594
	(command): move error handling to script
37595
	(menuentry): move grub_script_lexer_ref before
37596
	* script/sh/script.c (grub_script_create_cmdline): remove cmdline
37597
	argument. All callers updated
37598
37599
2009-06-04  Robert Millan  <rmh.grub@aybabtu.com>
37600
37601
	Prevent GRUB from probing floppies during boot.
37602
37603
	* conf/common.rmk (search_mod_CFLAGS): Use `-Werror -Wall'.
37604
	* commands/search.c (options): Add --no-floppy.
37605
	(search_fs, search_file, grub_cmd_search): Support --no-floppy.
37606
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Use
37607
	--no-floppy when searching for UUIDs.
37608
37609
2009-06-04  Robert Millan  <rmh.grub@aybabtu.com>
37610
37611
	Simplify the code duplication in commands/search.c.
37612
37613
	* commands/search.c (search_label, search_fs_uuid): Merge into ...
37614
	(search_fs): ... this.  Update all users.
37615
37616
2009-06-03  Felix Zielcke  <fzielcke@z-51.de>
37617
37618
	* util/grub-mkconfig.in (update_grub_dir): Rename to grub_mkconfig_dir.
37619
37620
2009-05-28  Pavel Roskin  <proski@gnu.org>
37621
37622
	* Makefile.in: Don't use "cp -d", it doesn't work on FreeBSD.
37623
	Remove the original symlink explicitly.
37624
37625
	* fs/hfs.c (grub_hfs_find_dir): Skip sequences of slashes, not
37626
	just one slash.  That's how grub_fshelp_find_file() does it.
37627
37628
2009-05-26  Pavel Roskin  <proski@gnu.org>
37629
37630
	* genmk.rb: Avoid shadowing variable `s', rename the outer `s'
37631
	to `str'.
37632
37633
	* util/getroot.c (grub_util_get_dev_abstraction): Mark os_dev as
37634
	possibly unused.
37635
37636
2009-05-25  Christian Franke  <franke@computer.org>
37637
37638
	* disk/ata.c (grub_ata_wait_not_busy): Add debug output of status
37639
	register.
37640
	(grub_atapi_identify): Add wait after drive select.
37641
	(grub_ata_identify): Do more strict status register check before
37642
	calling grub_atapi_identify ().  Suppress error message if status
37643
	register is 0x00 after command failure.  Add status register
37644
	check after PIO read to avoid bogus identify due to stuck DRQ.
37645
	Thanks to Pavel Roskin for testing.
37646
	(grub_device_initialize): Remove unsafe status register check.
37647
	Thanks to 'phcoder' for problem report and patch.
37648
	Prevent sign extension in debug message.
37649
37650
2009-05-23  Colin D Bennett  <colin@gibibit.com>
37651
37652
	Cleaned up `include/grub/normal.h'.  Grouped prototypes by
37653
	definition file, and functions defined in `normal/menu.c' have had
37654
	their prototypes moved to `include/grub/menu.h' for consistency.
37655
37656
	* include/grub/menu.h (grub_menu_execute_callback): Added; moved
37657
	from normal.h.
37658
	(grub_menu_get_entry): Likewise.
37659
	(grub_menu_get_timeout): Likewise.
37660
	(grub_menu_set_timeout): Likewise.
37661
	(grub_menu_execute_entry): Likewise.
37662
	(grub_menu_execute_with_fallback): Likewise.
37663
	(grub_menu_entry_run): Likewise.
37664
37665
	* include/grub/normal.h: Re-ordered and grouped function
37666
	prototypes by file that the function is defined in.
37667
	(grub_menu_execute_callback): Removed; moved to menu.h.
37668
	(grub_menu_get_entry): Likewise.
37669
	(grub_menu_get_timeout): Likewise.
37670
	(grub_menu_set_timeout): Likewise.
37671
	(grub_menu_execute_entry): Likewise.
37672
	(grub_menu_execute_with_fallback): Likewise.
37673
	(grub_menu_entry_run): Likewise.
37674
	(grub_menu_addentry): Renamed from this ...
37675
	(grub_normal_add_menu_entry): ... to this.
37676
37677
	* normal/main.c (grub_menu_addentry): Renamed from this ...
37678
	(grub_normal_add_menu_entry): ... to this.
37679
37680
	* script/sh/execute.c (grub_script_execute_menuentry): Update
37681
	reference to renamed grub_menu_addentry function.
37682
37683
2009-05-23  Felix Zielcke  <fzielcke@z-51.de>
37684
37685
	* commands/i386/pc/drivemap.c (MODNAME): Remove. Update all users.
37686
37687
2009-05-22  Pavel Roskin  <proski@gnu.org>
37688
37689
	* aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): Remove.
37690
	* configure.ac: Don't call grub_I386_CHECK_REGPARM_BUG.  Define
37691
	NESTED_FUNC_ATTR using AH_BOTTOM.  Use regparm(1) only when
37692
	compiling for the i386 targets, but not for the utilities.
37693
37694
	* include/grub/i386/pc/kernel.h (grub_boot_drive): Change type
37695
	to grub_uint8_t.
37696
	(grub_root_drive): Likewise.
37697
	* kern/i386/pc/startup.S (grub_boot_drive): Change size to byte,
37698
	remove alignment.
37699
	(grub_root_drive): Change size to byte.
37700
	(grub_start_addr): Remove.
37701
	(grub_end_addr): Likewise.
37702
	(grub_apm_bios_info): Likewise.
37703
37704
2009-05-21  Felix Zielcke  <fzielcke@z-51.de>
37705
37706
	* normal/i386: Remove.
37707
	* normal/powerpc: Likewise.
37708
	* normal/sparc64: Likewise.
37709
	* normal/x86_64: Likewise.
37710
37711
2009-05-19  Vladimir Serbinenko  <phcoder@gmail.com>
37712
37713
	* conf/x86_64-efi.rmk (linux_mod_ASFLAGS): Add missing variable
37714
	* loader/i386/linux_trampoline.S: Fix indentation
37715
	* loader/i386/xnu_helper.S: Likewise
37716
37717
2009-05-18  Colin D Bennett  <colin@gibibit.com>
37718
37719
	Display error messages when parsing a Lua statement fails.
37720
	Previously, executing a syntactically invalid statement like
37721
	")foo" or "bar;" would silently fail.
37722
37723
	* script/lua/grub_main.c (handle_lua_error): New function.
37724
	(grub_lua_parse_line): Improved reporting of Lua parser and
37725
	execution errors.
37726
37727
2009-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
37728
37729
	Remove -Werror which causes build to fail on some systems
37730
37731
	* conf/i386-pc.rmk (xnu_mod_CFLAGS): Remove -Werror -Wall
37732
	* conf/i386-efi.rmk (xnu_mod_CFLAGS): Likewise
37733
	* conf/x86_64-efi.rmk (xnu_mod_CFLAGS): Likewise
37734
37735
2009-05-17  Vladimir Serbinenko  <phcoder@gmail.com>
37736
37737
	trampoline for linux on 64-bit platform
37738
37739
	* conf/x86_64-efi.rmk (linux_mod_SOURCES): added
37740
	loader/i386/efi/linux_trampoline.S
37741
	* include/grub/x86_64/efi/loader.h (grub_linux_real_boot): removed
37742
	declaration
37743
	* kern/x86_64/efi/startup.S (grub_linux_real_boot): moved from
37744
	here
37745
	* loader/i386/linux_trampoline.S: moved here
37746
	* loader/i386/efi/linux.c (allocate_pages): reserve space for
37747
	trampoline
37748
	(jumpvector): removed
37749
	(grub_linux_trampoline_start): new declaration
37750
	(grub_linux_trampoline_end): likewise
37751
	(grub_linux_boot): use trampoline when on 64-bit platform
37752
	* loader/i386/linux.c: likewise
37753
37754
2009-05-16  Pavel Roskin  <proski@gnu.org>
37755
37756
	* script/lua/grub_lib.c (grub_lua_getenv): Make name and value
37757
	const to avoid a warning.
37758
	(grub_lua_setenv): Likewise.
37759
	* script/lua/grub_main.c (grub_lua_parse_line): Use size_t for
37760
	lmsg to fix a warning.
37761
37762
2009-05-16  Felix Zielcke  <fzielcke@z-51.de>
37763
37764
	* conf/i386.rmk (setjmp_mod_CFLAGS): Rename to ...
37765
	(setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS).
37766
	* conf/x86_64-efi.rmk (setjmp_mod_CFLAGS): Rename to ...
37767
	(setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS).
37768
	* conf/powerpc-ieee1275.rmk (setjmp_mod_CFLAGS): Rename to ...
37769
	(setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS).
37770
	* conf/sparc64-ieee1275.rmk (setjmp_mod_CFLAGS): Rename to ...
37771
	(setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS).
37772
37773
2009-05-16  Felix Zielcke  <fzielcke@z-51.de>
37774
37775
	* util/grub-mkconfig.in: Export GRUB_TERMINAL_INPUT.
37776
37777
2009-05-16  Bean  <bean123ch@gmail.com>
37778
37779
	* conf/common.rmk (pkglib_MODULES): Add lua.mod.
37780
	(lua_mod_SOURCES): New variable.
37781
	(lua_mod_CFLAGS): Likewise.
37782
	(lua_mod_LDFLAGS): Likewise.
37783
37784
	* conf/i386.rmk (pkglib_MODULES): Add setjmp.mod.
37785
	(setjmp_mod_SOURCES): New variable.
37786
	(setjmp_mod_CFLAGS): Likewise.
37787
	(setjmp_LDFLAGS): Likewise.
37788
37789
	* conf/x86_64-efi.rmk (pkglib_MODULES): Add setjmp.mod.
37790
	(setjmp_mod_SOURCES): New variable.
37791
	(setjmp_mod_CFLAGS): Likewise.
37792
	(setjmp_LDFLAGS): Likewise.
37793
37794
	* conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add setjmp.mod.
37795
	(setjmp_mod_SOURCES): New variable.
37796
	(setjmp_mod_CFLAGS): Likewise.
37797
	(setjmp_LDFLAGS): Likewise.
37798
37799
	* conf/sparc64-ieee1275.rmk (pkglib_MODULES): Add setjmp.mod.
37800
	(setjmp_mod_SOURCES): New variable.
37801
	(setjmp_mod_CFLAGS): Likewise.
37802
	(setjmp_LDFLAGS): Likewise.
37803
37804
	* normal/i386/setjmp.S: Moved from here ...
37805
	* lib/i386/setjmp.S: ... Moved here
37806
	* normal/x86_64/setjmp.S: Moved from here ...
37807
	* lib/x86_64/setjmp.S: ... Moved here
37808
	* normal/powerpc/setjmp.S: Moved from here ...
37809
	* lib/powerpc/setjmp.S: ... Moved here
37810
	* normal/sparc64/setjmp.S: Moved from here ...
37811
	* lib/sparc64/setjmp.S: ... Moved here
37812
37813
	* include/grub/i386/setjmp.h (grub_setjmp): Don't use attribute
37814
	returns_twice in mingw.
37815
37816
	* script/lua/grub_lib.c: New file.
37817
	* script/lua/grub_lib.h: Likewise.
37818
	* script/lua/grub_lua.h: Likewise.
37819
	* script/lua/grub_main.c: Likewise.
37820
	* script/lua/lapi.c: Likewise.
37821
	* script/lua/lapi.h: Likewise.
37822
	* script/lua/lauxlib.c: Likewise.
37823
	* script/lua/lauxlib.h: Likewise.
37824
	* script/lua/lbaselib.c: Likewise.
37825
	* script/lua/lcode.c: Likewise.
37826
	* script/lua/lcode.h: Likewise.
37827
	* script/lua/ldblib.c: Likewise.
37828
	* script/lua/ldebug.c: Likewise.
37829
	* script/lua/ldebug.h: Likewise.
37830
	* script/lua/ldo.c: Likewise.
37831
	* script/lua/ldo.h: Likewise.
37832
	* script/lua/ldump.c: Likewise.
37833
	* script/lua/lfunc.c: Likewise.
37834
	* script/lua/lfunc.h: Likewise.
37835
	* script/lua/lgc.c: Likewise.
37836
	* script/lua/lgc.h: Likewise.
37837
	* script/lua/linit.c: Likewise.
37838
	* script/lua/liolib.c: Likewise.
37839
	* script/lua/llex.c: Likewise.
37840
	* script/lua/llex.h: Likewise.
37841
	* script/lua/llimits.h: Likewise.
37842
	* script/lua/lmathlib.c: Likewise.
37843
	* script/lua/lmem.c: Likewise.
37844
	* script/lua/lmem.h: Likewise.
37845
	* script/lua/loadlib.c: Likewise.
37846
	* script/lua/lobject.c: Likewise.
37847
	* script/lua/lobject.h: Likewise.
37848
	* script/lua/lopcodes.c: Likewise.
37849
	* script/lua/lopcodes.h: Likewise.
37850
	* script/lua/loslib.c: Likewise.
37851
	* script/lua/lparser.c: Likewise.
37852
	* script/lua/lparser.h: Likewise.
37853
	* script/lua/lstate.c: Likewise.
37854
	* script/lua/lstate.h: Likewise.
37855
	* script/lua/lstring.c: Likewise.
37856
	* script/lua/lstring.h: Likewise.
37857
	* script/lua/lstrlib.c: Likewise.
37858
	* script/lua/ltable.c: Likewise.
37859
	* script/lua/ltable.h: Likewise.
37860
	* script/lua/ltablib.c: Likewise.
37861
	* script/lua/ltm.c: Likewise.
37862
	* script/lua/ltm.h: Likewise.
37863
	* script/lua/lua.h: Likewise.
37864
	* script/lua/luaconf.h: Likewise.
37865
	* script/lua/lualib.h: Likewise.
37866
	* script/lua/lundump.c: Likewise.
37867
	* script/lua/lundump.h: Likewise.
37868
	* script/lua/lvm.c: Likewise.
37869
	* script/lua/lvm.h: Likewise.
37870
	* script/lua/lzio.c: Likewise.
37871
	* script/lua/lzio.h: Likewise.
37872
37873
2009-05-16  Bean  <bean123ch@gmail.com>
37874
37875
	* include/grub/kernel.h (grub_module_header_types): Add type
37876
	OBJ_TYPE_CONFIG.
37877
37878
	* kern/main.c (grub_load_config): New function.
37879
	(grub_main): Call grub_load_config to read boot config.
37880
37881
	* grub-mkimage (generate_image): New parameter config_path.
37882
	(options): New option --config.
37883
	(main): Parse --config option, and pass it to generate_image.
37884
37885
2009-05-14  Christian Franke  <franke@computer.org>
37886
37887
	* commands/i386/pc/drivemap_int13h.S: Add missing EXT_C for symbols.
37888
	This fixes build on Cygwin.
37889
37890
2009-05-14  Pavel Roskin  <proski@gnu.org>
37891
37892
	* commands/i386/pc/drivemap_int13h.S: Eliminate unconditional
37893
	jump.  This saves two bytes, so the typical case of 2 swapped
37894
	drives would fit 32 bytes.
37895
37896
2009-05-13  Pavel Roskin  <proski@gnu.org>
37897
37898
	* loader/i386/multiboot.c (grub_multiboot): Cast mmap_addr to
37899
	grub_uint32_t to avoid a warning.
37900
37901
	* loader/i386/linux.c (allocate_pages): When assigning
37902
	real_mode_mem, cast through grub_size_t to fix a warning.  The
37903
	code already makes sure that the value would fit a pointer.
37904
	(grub_linux_setup_video): Cast render_target->data to
37905
	grub_size_t to fix a warning.
37906
37907
2009-05-13  Javier Martín  <lordhabbit@gmail.com>
37908
37909
	* commands/i386/pc/drivemap.c: New file - implement drivemap
37910
	command.
37911
	* commands/i386/pc/drivemap_int13h.S: New file - int13 handler.
37912
	* conf/i386-pc.rmk: Add drivemap.c and drivemap_int13h.S.
37913
37914
2009-05-13  Pavel Roskin  <proski@gnu.org>
37915
37916
	* util/i386/pc/grub-setup.c (setup): Remove unused variable
37917
	embedding_area_exists.
37918
37919
2009-05-13  Robert Millan  <rmh.grub@aybabtu.com>
37920
37921
	* util/i386/pc/grub-setup.c (setup): Restructure code flow to make
37922
	it easier to understand / work with.
37923
	Improve warning messages for cases where there's no embedding area,
37924
	or when it is too small (or core.img too large).
37925
37926
2009-05-13  Pavel Roskin  <proski@gnu.org>
37927
37928
	* loader/i386/pc/multiboot2.c: Add necessary includes for
37929
	grub_multiboot2_real_boot().
37930
37931
	* fs/iso9660.c (grub_iso9660_iterate_dir): The file mode in the
37932
	PX record is always little-endian.  We only need the lower 2
37933
	bytes of the mode.
37934
37935
	* fs/cpio.c: Use the same name "struct head" for tar and cpio to
37936
	facilitate code reuse.
37937
	(grub_cpio_mount): Use "struct head", not a char buffer.  This
37938
	fixes a warning reported by gcc 4.4.
37939
37940
	* kernel/disk.c (grub_disk_read): Use void pointer for the
37941
	buffer.
37942
	(grub_disk_write): Use const void pointer for the buffer.
37943
	Adjust all callers.  Remove unnecessary casts.
37944
37945
2009-05-10  Robert Millan  <rmh.grub@aybabtu.com>
37946
37947
	* util/i386/pc/grub-install.in: Update copyright year.
37948
37949
2009-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
37950
37951
	gptsync
37952
37953
	* commands/gptsync.c: new file
37954
	* conf/common.rmk (pkglib_MODULES): add gptsync.mod
37955
	(gptsync_mod_SOURCES): new variable
37956
	(gptsync_mod_CFLAGS): likewise
37957
	(gptsync_mod_LDFLAGS): likewise
37958
	* include/grub/pc_partition.h (GRUB_PC_PARTITION_TYPE_NTFS):
37959
	new definition
37960
	(GRUB_PC_PARTITION_TYPE_HFS): likewise
37961
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/gptsync.c
37962
	* conf/i386-ieee1275.rmk: likewise
37963
	* conf/i386-pc.rmk: likewise
37964
	* conf/powerpc-ieee1275.rmk: likewise
37965
37966
2009-05-09  Vladimir Serbinenko  <phcoder@gmail.com>
37967
37968
	Fixed grub-emu
37969
37970
	* kern/dl.c (grub_dl_ref): omit when compiling grub-emu
37971
	(grub_dl_ref): likewise
37972
37973
2009-05-08  Robert Millan  <rmh.grub@aybabtu.com>
37974
37975
	* util/i386/pc/grub-setup.c (setup): Factorize find_usable_region(),
37976
	split in two functions (one for msdos and one for gpt).
37977
37978
2009-05-08  Pavel Roskin  <proski@gnu.org>
37979
37980
	* disk/raid.c (grub_raid_block_xor): Make buf2 constant, it's
37981
	not modified.
37982
37983
	* disk/raid6_recover.c (grub_raid6_recover): Fix warnings about
37984
	uninitialized err[0] and err[1].  Rename them to bad1 and bad2.
37985
	Initialize them with -1.  Add sanity check for bad1.  Eliminate
37986
	nerr variable.
37987
37988
2009-05-08  David S. Miller  <davem@davemloft.net>
37989
37990
	* util/sparc64/ieee1275/grub-ofpathname.c (main): Set progname.
37991
37992
2009-05-06  Robert Millan  <rmh.grub@aybabtu.com>
37993
37994
	* util/i386/pc/grub-setup.c (setup): Fix check for embed region
37995
	existence.
37996
37997
2009-05-05  Felix Zielcke  <fzielcke@z-51.de>
37998
37999
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
38000
	`kern/rescue_reader.c', `kern/rescue_parser.c' and `normal/autofs.c'.
38001
38002
2009-05-05  David S. Miller  <davem@davemloft.net>
38003
38004
	* util/sparc64/ieee1275/grub-install.in: Fix sed arg quoting.
38005
38006
2009-05-05  Pavel Roskin  <proski@gnu.org>
38007
38008
	* include/grub/dl.h [GRUB_UTIL]: Provide inline implementations
38009
	of grub_dl_ref() and grub_dl_unref().
38010
	* commands/parttool.c: Remove preprocessor conditionals around
38011
	grub_dl_ref() and grub_dl_unref().
38012
	* fs/affs.c: Likewise.
38013
	* fs/afs.c: Likewise.
38014
	* fs/cpio.c: Likewise.
38015
	* fs/ext2.c: Likewise.
38016
	* fs/fat.c: Likewise.
38017
	* fs/hfs.c: Likewise.
38018
	* fs/hfsplus.c: Likewise.
38019
	* fs/iso9660.c: Likewise.
38020
	* fs/jfs.c: Likewise.
38021
	* fs/minix.c: Likewise.
38022
	* fs/ntfs.c: Likewise.
38023
	* fs/reiserfs.c: Likewise.
38024
	* fs/sfs.c: Likewise.
38025
	* fs/udf.c: Likewise.
38026
	* fs/ufs.c: Likewise.
38027
	* fs/xfs.c: Likewise.
38028
	* include/grub/dl.h: Likewise.
38029
	* loader/xnu.c: Likewise.
38030
38031
2009-05-04  Pavel Roskin  <proski@gnu.org>
38032
38033
	* commands/acpi.c: Remove unused variable my_mod.
38034
	* partmap/amiga.c: Likewise.
38035
	* partmap/apple.c: Likewise.
38036
	* partmap/gpt.c: Likewise.
38037
	* partmap/pc.c: Likewise.
38038
	* partmap/sun.c: Likewise.
38039
	* term/gfxterm.c: Likewise.
38040
	* term/i386/pc/vesafb.c: Likewise.
38041
	* term/i386/pc/vga.c: Likewise.
38042
38043
2009-05-04  David S. Miller  <davem@davemloft.net>
38044
38045
	* kern/ieee1275/openfw.c (grub_children_iterate): Fix string
38046
	pointer args to grub_ieee1275_get_property().
38047
38048
	* conf/sparc64-ieee1275.rmk: Fix build due to missing '\'.
38049
38050
	* disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Bypass cdrom
38051
	devices, and do not traverse down under controller nodes.
38052
38053
	* disk/ieee1275/ofdisk.c (compute_dev_path): New.
38054
	(grub_ofdisk_open): Use it to un-escape "," characters.
38055
	* kern/disk.c (find_part_sep): New.
38056
	(grub_disk_open): Use it to find the first non-escaped ','
38057
	character in the disk name.
38058
	* util/ieee1275/devicemap.c (escape_of_path): New.
38059
	(grub_util_emit_devicemap_entry): Use it.
38060
	* util/sparc64/ieee1275/grub-install.in: Update script to
38061
	strip partition specifiers properly by not triggering on
38062
	'\' escaped ',' characters.
38063
38064
2009-05-04  Robert Millan  <rmh.grub@aybabtu.com>
38065
38066
	* include/grub/i386/linux.h (GRUB_LINUX_VID_MODE_VESA_START): Set
38067
	to 0x300.
38068
	* loader/i386/linux.c (vga_modes, linux_vesafb_res): Add a few
38069
	resolutions.
38070
	(linux_vesafb_modes): Add a lot of additional modes to the list (based
38071
	on documentation from Wikipedia).
38072
38073
2009-05-04  Pavel Roskin  <proski@gnu.org>
38074
38075
	* disk/ata.c: Spelling fixes.
38076
	* disk/raid.c: Likewise.
38077
	* disk/usbms.c: Likewise.
38078
	* disk/dmraid_nvidia.c: Likewise.
38079
	* kern/ieee1275/openfw.c: Likewise.
38080
	* kern/ieee1275/init.c: Likewise.
38081
	* kern/ieee1275/cmain.c: Likewise.
38082
	* boot/i386/pc/cdboot.S: Likewise.
38083
	* video/readers/png.c: Likewise.
38084
	* video/i386/pc/vbe.c: Likewise.
38085
	* fs/udf.c: Likewise.
38086
	* fs/hfs.c: Likewise.
38087
	* fs/reiserfs.c: Likewise.
38088
	* efiemu/runtime/efiemu.c: Likewise.
38089
	* efiemu/main.c: Likewise.
38090
	* efiemu/mm.c: Likewise.
38091
	* include/grub/elf.h: Likewise.
38092
	* include/grub/xnu.h: Likewise.
38093
	* include/grub/usbdesc.h: Likewise.
38094
	* include/grub/usb.h: Likewise.
38095
	* include/grub/script_sh.h: Likewise.
38096
	* include/grub/lib/LzmaEnc.h: Likewise.
38097
	* include/grub/efiemu/efiemu.h: Likewise.
38098
	* include/grub/command.h: Likewise.
38099
	* normal/menu.c: Likewise.
38100
	* normal/main.c: Likewise.
38101
	* normal/datetime.c: Likewise.
38102
	* bus/usb/uhci.c: Likewise.
38103
	* mmap/i386/uppermem.c: Likewise.
38104
	* mmap/mmap.c: Likewise.
38105
	* commands/acpi.c: Likewise.
38106
	* commands/test.c: Likewise.
38107
	* partmap/apple.c: Likewise.
38108
	* font/font.c: Likewise.
38109
	* loader/sparc64/ieee1275/linux.c: Likewise.
38110
	* loader/macho.c: Likewise.
38111
	* loader/i386/bsd_trampoline.S: Likewise.
38112
	* loader/i386/bsd.c: Likewise.
38113
	* loader/xnu.c: Likewise.
38114
	* term/i386/pc/vesafb.c: Likewise.
38115
	* term/usb_keyboard.c: Likewise.
38116
	* util/resolve.c: Likewise.
38117
	* util/getroot.c: Likewise.
38118
38119
2009-05-04  Felix Zielcke  <fzielcke@z-51.de>
38120
38121
	* conf/i386-pc.rmk (libpkg_DATA): Rename to pkglib_DATA.
38122
38123
2009-05-04  Robert Millan  <rmh.grub@aybabtu.com>
38124
38125
	* loader/i386/linux.c [GRUB_MACHINE_PCBIOS] (grub_cmd_linux): Fix
38126
	build error.
38127
38128
2009-05-04  Robert Millan  <rmh.grub@aybabtu.com>
38129
38130
	* loader/i386/linux.c (grub_cmd_linux): Make "vga=" compatibility
38131
	parameter only available on BIOS.
38132
38133
2009-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
38134
38135
	Removed wrong semicolon in declaration
38136
38137
	* grub/misc.h (grub_dprintf): remove semicolon
38138
38139
2009-05-04  Robert Millan  <rmh.grub@aybabtu.com>
38140
38141
	* loader/i386/linux.c (GRUB_ASSUME_LINUX_HAS_FB_SUPPORT): New macro.
38142
	(grub_linux_boot): Don't check for `linux_vesafb_modes' bounds (this
38143
	is done by grub_cmd_linux() now).
38144
	[! GRUB_ASSUME_LINUX_HAS_FB_SUPPORT]: If "vga=" parameter wasn't set,
38145
	restore video to text mode.
38146
	(grub_cmd_linux): Default `vid_mode' initialization to 0, which
38147
	indicates lack of "vga=" parameter.  "vga=0" is mapped to
38148
	`GRUB_LINUX_VID_MODE_NORMAL'.
38149
38150
2009-05-04  Felix Zielcke  <fzielcke@z-51.de>
38151
38152
	* conf/i386-efi.rmk (grub_emu_SOURCES): Remove `normal/execute.c',
38153
	`normal/lexer.c', `kern/rescue.c', `normal/function.c', `normal/misc.c'
38154
	and `normal/script.c'.  Add `kern/rescue_reader.c',
38155
	`kern/rescue_parser.c', `script/sh/main.c', `script/sh/execute.c',
38156
	`script/sh/function.c', `script/sh/lexer.c', `script/sh/script.c' and
38157
	`grub_script.tab.c'.
38158
38159
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
38160
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
38161
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
38162
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
38163
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
38164
38165
	* Makefile.in: Remove duplicated 2008 in Copyright line.
38166
38167
2009-05-04  Robert Millan  <rmh.grub@aybabtu.com>
38168
38169
	* util/misc.c (grub_util_warn): New function.  Emits a warning
38170
	unconditionally.
38171
	* include/grub/util/misc.h (grub_util_warn): New declaration.
38172
38173
	* util/i386/pc/grub-install.in: Understand --force and pass it down
38174
	to grub-setup.
38175
38176
	* util/i386/pc/grub-setup.c (main): Understand --force and pass it
38177
	down to setup().
38178
	(setup): Improve error messages and add warnings when requested to
38179
	install in odd layouts.  Refuse to install using blocklists unless
38180
	--force was set.
38181
38182
2009-05-04  martin f. krafft  <madduck@madduck.net>
38183
38184
	* disk/raid.c (grub_raid_scan_device): Improve debug message.
38185
38186
2009-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
38187
38188
	Updated copyright year
38189
38190
	* fs/hfsplus.c: updated copyright year
38191
38192
2009-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
38193
38194
	HFS+ UUID
38195
38196
	* fs/hfsplus.c (grub_hfsplus_volheader): added num_serial field
38197
	in the space previously used by unused3
38198
	(grub_hfsplus_uuid): new function
38199
	(grub_hfsplus_fs): added uuid field
38200
38201
2009-05-03  Pavel Roskin  <proski@gnu.org>
38202
38203
	* disk/ata.c: Don't cast mod to void in GRUB_MOD_INIT to
38204
	suppress warnings.  It's no longer needed.
38205
	* disk/host.c: Likewise.
38206
	* disk/ata_pthru.c: Likewise.
38207
	* disk/loopback.c: Likewise.
38208
	* hook/datehook.c: Likewise.
38209
	* parttool/pcpart.c: Likewise.
38210
	* fs/i386/pc/pxe.c: Likewise.
38211
	* fs/ntfscomp.c: Likewise.
38212
	* efiemu/main.c: Likewise.
38213
	* mmap/mmap.c: Likewise.
38214
	* commands/crc.c: Likewise.
38215
	* commands/hexdump.c: Likewise.
38216
	* commands/hdparm.c: Likewise.
38217
	* commands/acpi.c: Likewise.
38218
	* commands/echo.c: Likewise.
38219
	* commands/minicmd.c: Likewise.
38220
	* commands/blocklist.c: Likewise.
38221
	* commands/memrw.c: Likewise.
38222
	* commands/loadenv.c: Likewise.
38223
	* commands/usbtest.c: Likewise.
38224
	* commands/lsmmap.c: Likewise.
38225
	* commands/boot.c: Likewise.
38226
	* commands/parttool.c: Likewise.
38227
	* commands/configfile.c: Likewise.
38228
	* commands/search.c: Likewise.
38229
	* commands/ieee1275/suspend.c: Likewise.
38230
	* commands/cat.c: Likewise.
38231
	* commands/i386/pc/pxecmd.c: Likewise.
38232
	* commands/i386/pc/play.c: Likewise.
38233
	* commands/i386/pc/halt.c: Likewise.
38234
	* commands/i386/pc/vbeinfo.c: Likewise.
38235
	* commands/i386/pc/vbetest.c: Likewise.
38236
	* commands/lspci.c: Likewise.
38237
	* commands/date.c: Likewise.
38238
	* commands/handler.c: Likewise.
38239
	* commands/ls.c: Likewise.
38240
	* commands/test.c: Likewise.
38241
	* commands/cmp.c: Likewise.
38242
	* commands/efi/loadbios.c: Likewise.
38243
	* commands/efi/fixvideo.c: Likewise.
38244
	* commands/halt.c: Likewise.
38245
	* commands/help.c: Likewise.
38246
	* commands/reboot.c: Likewise.
38247
	* hello/hello.c: Likewise.
38248
	* script/sh/main.c: Likewise.
38249
	* loader/xnu.c: Likewise.
38250
	* term/terminfo.c: Likewise.
38251
	* term/i386/pc/serial.c: Likewise.
38252
	* term/usb_keyboard.c: Likewise.
38253
38254
2009-05-03  David S. Miller  <davem@davemloft.net>
38255
38256
	* normal/menu.c: Include grub/parser.h
38257
38258
2009-05-03  Pavel Roskin  <proski@gnu.org>
38259
38260
	* mmap/efi/mmap.c (grub_mmap_malign_and_register): Return void*,
38261
	not char*.
38262
	* mmap/i386/mmap.c (grub_mmap_malign_and_register): Likewise.
38263
	Suggested by Javier Martín <lordhabbit@gmail.com>
38264
38265
	* util/i386/pc/grub-mkrescue.in: Allow for the case when
38266
	efiemu??.o doesn't exist.
38267
	* util/i386/pc/grub-install.in: Likewise.  Use "cp -f" for
38268
	copying.
38269
38270
2009-05-03  Bean  <bean123ch@gmail.com> Vladimir Serbinenko  <phcoder@gmail.com>
38271
38272
	FreeBSD 64-bit support
38273
38274
	* conf/i386-pc.rmk (bsd_mod_SOURCES): add loader/i386/bsd_helper.S
38275
	and loader/i386/bsd_trampoline.S
38276
	(bsd_mod_ASFLAGS): new variable
38277
	* include/grub/i386/bsd.h (FREEBSD_MODINFOMD_SMAP): new definition
38278
	(FREEBSD_MODTYPE_KERNEL64): likewise
38279
	(grub_bsd64_trampoline_start): likewise
38280
	(grub_bsd64_trampoline_end): likewise
38281
	(grub_bsd64_trampoline_selfjump): likewise
38282
	(grub_bsd64_trampoline_gdt): likewise
38283
	* include/grub/i386/loader.h (grub_unix_real_boot): moved from here ...
38284
	* include/grub/i386/bsd.h (grub_unix_real_boot): ... moved here
38285
	* kern/i386/loader.S (grub_unix_real_boot): moved from here ...
38286
	* loader/i386/bsd_helper.S (grub_unix_real_boot): moved here
38287
	* include/grub/gpt_partition.h (grub_gpt_partentry): Corrected the type
38288
	of "attrib" member
38289
	* loader/i386/bsd_pagetable.c: new file
38290
	* loader/i386/bsd_trampoline.S: likewise
38291
	* loader/i386/bsd.c (ALIGN_QWORD): new macro
38292
	(ALIGN_VAR): likewise
38293
	(entry_hi): new variable
38294
	(kern_end_mdofs): likewise
38295
	(is_64bit): likewise
38296
	(grub_freebsd_add_meta): use ALIGN_VAR
38297
	(grub_e820_mmap): new declaration
38298
	(grub_freebsd_add_mmap): new function
38299
	(grub_freebsd_add_meta_module): support 64 bit kernels
38300
	(grub_freebsd_list_modules): use ALIGN_VAR
38301
	(gdt_descriptor): new declaration
38302
	(grub_freebsd_boot): support 64 bit kernels
38303
	(grub_bsd_elf64_hook): new function
38304
	(grub_bsd_load_elf): support elf64
38305
38306
2009-05-03  Bean  <bean123ch@gmail.com>
38307
38308
	* script/sh/execute.c (grub_script_execute_cmdif): Reset grub_errno
38309
	after we get the result of if statement.
38310
38311
2009-05-03  Bean  <bean123ch@gmail.com>
38312
38313
	* Makefile.in (enable_efiemu): New variable.
38314
38315
	* conf/i386-pc.rmk: Only compile efiemu runtimes when enable_efiemu is
38316
	set.
38317
	(efiemu32.o): Use macro $< for source file, add $(srcdir) to include
38318
	path.
38319
	(efi64_c.o): Use macro $< for source file, add $(srcdir) to include
38320
	path, add -mno-red-zone option.
38321
	(efiemu64_s.o): Likewise.
38322
	(efiemu64.o): Use macro $^ for source file.
38323
38324
	* configure.ac (--enable-efiemu): New option.
38325
38326
2009-05-03  Vladimir Serbinenko  <phcoder@gmail.com>
38327
38328
	xnu support
38329
38330
	* conf/i386-efi.rmk (kernel_mod_HEADERS): added i386/pit.h
38331
	(pkglib_MODULES): add xnu.mod
38332
	(xnu_mod_SOURCES): new variable
38333
	(xnu_mod_CFLAGS): likewise
38334
	(xnu_mod_LDFLAGS): likewise
38335
	(xnu_mod_ASFLAGS): likewise
38336
	* conf/i386-pc.rmk: likewise
38337
	* conf/x86_64-efi.rmk: likewise
38338
	* include/grub/efi/efi.h (grub_efi_finish_boot_services):
38339
	new declaration
38340
	* include/grub/i386/macho.h: new file
38341
	* include/grub/i386/xnu.h: likewise
38342
	* include/grub/macho.h: likewise
38343
	* include/grub/machoload.h: likewise
38344
	* include/grub/x86_64/macho.h: likewise
38345
	* include/grub/x86_64/xnu.h: likewise
38346
	* include/grub/xnu.h: likewise
38347
	* kern/efi/efi.c (grub_efi_finish_boot_services): new function
38348
	* kern/efi/mm.c (MAX_HEAP_SIZE): increase
38349
	* loader/i386/efi/xnu.c: new file
38350
	* loader/i386/pc/xnu.c: likewise
38351
	* loader/i386/xnu.c: likewise
38352
	* loader/i386/xnu_helper.S: likewise
38353
	* loader/macho.c: likewise
38354
	* loader/xnu.c: likewise
38355
	* loader/xnu_resume.c: likewise
38356
	* util/grub-dumpdevtree: likewise
38357
	* include/grub/i386/pit.h: include grub/err.h
38358
	(grub_pit_wait): export
38359
	* util/grub.d/30_os-prober.in: support Darwin/Mac OS X
38360
38361
2009-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
38362
38363
	Efiemu
38364
38365
	* conf/i386-pc.rmk: new modules efiemu, efiemu_acpi, efiemu_pnvram,
38366
	_linux_efi, linux_efi.
38367
	new files in grub-emu
38368
	new targets efiemu32.o and efiemu64.o
38369
	* loader/linux_normal_efiemu.c: likewise
38370
	* loader/i386/efi/linux.c: added preliminary efiemu support
38371
	* util/i386/pc/grub-install.in: add efiemu??.o to the list of
38372
	files to copy
38373
	* include/grub/autoefi.h: new file
38374
	* include/grub/i386/efiemu.h: likewise
38375
	* include/grub/i386/pc/efiemu.h: likewise
38376
	* include/grub/efi/api.h: add LL suffix when necessary
38377
	new definitions relating to tables
38378
	* include/grub/efiemu/efiemu.h: new file
38379
	* include/grub/efiemu/runtime.h: likewise
38380
	* efiemu/prepare.c: likewise
38381
	* efiemu/loadcore_common.c: likewise
38382
	* efiemu/loadcore64.c: likewise
38383
	* efiemu/runtime/efiemu.sh: likewise
38384
	* efiemu/runtime/efiemu.S: likewise
38385
	* efiemu/runtime/efiemu.c: likewise
38386
	* efiemu/runtime/config.h: likewise
38387
	* efiemu/prepare32.c: likewise
38388
	* efiemu/main.c: likewise
38389
	* efiemu/modules/pnvram.c: likewise
38390
	* efiemu/modules/i386: likewise
38391
	* efiemu/modules/i386/pc: likewise
38392
	* efiemu/modules/acpi.c: likewise
38393
	* efiemu/i386/pc/cfgtables.c: likewise
38394
	* efiemu/i386/loadcore64.c: likewise
38395
	* efiemu/i386/loadcore32.c: likewise
38396
	* efiemu/prepare64.c: likewise
38397
	* efiemu/loadcore.c: likewise
38398
	* efiemu/symbols.c: likewise
38399
	* efiemu/mm.c: likewise
38400
	* efiemu/loadcore32.c: likewise
38401
38402
2009-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
38403
38404
	ACPI spoofing
38405
38406
	* commands/acpi.c: new file
38407
	* commands/i386/pc/acpi.c: likewise
38408
	* commands/efi/acpi.c: likewise
38409
	* include/grub/acpi.h: likewise
38410
	* conf/i386-pc.rmk (pkglib_MODULES): added acpi.mod
38411
	(acpi_mod_SOURCES): new variable
38412
	(acpi_mod_CFLAGS): likewise
38413
	(acpi_mod_LDFLAGS): likewise
38414
	* conf/i386-efi.rmk: likewise
38415
	* conf/x86_64-efi.rmk: likewise
38416
38417
2009-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
38418
38419
	Missing part from mmap patch
38420
38421
	* mmap/efi/mmap.c (grub_machine_mmap_unregister): renamed to
38422
	(grub_mmap_unregister)
38423
	(grub_mmap_free_and_unregister): use grub_mmap_register
38424
38425
2009-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
38426
38427
	Mmap services
38428
38429
	* loader/i386/efi/linux.c (grub_linux_boot): use grub_mmap_iterate
38430
	* loader/i386/linux.c (find_mmap_size): likewise
38431
	(allocate_pages): likewise
38432
	* loader/i386/multiboot.c (grub_get_multiboot_mmap_len): likewise
38433
	(grub_fill_multiboot_mmap): likewise
38434
	(grub_multiboot): use grub_mmap_get_lower and grub_mmap_get_upper
38435
	* loader/i386/pc/linux.c (grub_cmd_linux): use grub_mmap_get_lower
38436
	* include/grub/i386/bsd.h (OPENBSD_MMAP_AVAILABLE): new definition
38437
	(OPENBSD_MMAP_RESERVED): likewise
38438
	* include/grub/i386/pc/memory.h: include grub/memory.h
38439
	(grub_lower_mem): removed
38440
	(grub_upper_mem): likewise
38441
	(GRUB_MACHINE_MEMORY_ACPI): new definition
38442
	(GRUB_MACHINE_MEMORY_NVS): likewise
38443
	(GRUB_MACHINE_MEMORY_MAX_TYPE): likewise
38444
	(GRUB_MACHINE_MEMORY_HOLE): likewise
38445
	(grub_machine_mmap_register): likewise
38446
	(grub_machine_mmap_unregister): likewise
38447
	(grub_machine_get_upper): likewise
38448
	(grub_machine_get_lower): likewise
38449
	(grub_machine_get_post64): likewise
38450
	* include/grub/i386/efi/memory.h: new file
38451
	* include/grub/x86_64/efi/memory.h: likewise
38452
	* include/grub/efi/memory.h: likewise
38453
	* conf/i386-pc.rmk (pkglib_MODULES): added mmap.mod
38454
	(mmap_mod_SOURCES): new variable
38455
	(mmap_mod_LDFLAGS): likewise
38456
	(mmap_mod_ASFLAGS): likewise
38457
	* conf/i386-coreboot.rmk: likewise
38458
	* conf/i386-ieee1275.rmk: likewise
38459
	* conf/i386-efi.rmk: likewise
38460
	* conf/x86_64-efi.rmk: likewise
38461
	* include/grub/types.h (UINT_TO_PTR): new macro
38462
	(PTR_TO_UINT32): likewise
38463
	(PTR_TO_UINT64): likewise
38464
	* include/grub/memory.h: new file
38465
	* mmap/i386/pc/mmap.c: likewise
38466
	* mmap/i386/pc/mmap_helper.S: likewise
38467
	* mmap/i386/uppermem.c: likewise
38468
	* mmap/mmap.c: likewise
38469
	* mmap/efi/mmap.c: likewise
38470
	* kern/i386/coreboot/init.c (grub_machine_init): don't use
38471
	grub_upper_mem
38472
	* kern/i386/pc/init.c (grub_lower_mem): removed variable
38473
	(grub_upper_mem): likewise
38474
	(grub_machine_init): don't use grub_upper_mem,
38475
	make grub_lower_mem local
38476
	* loader/i386/bsd.c (grub_openbsd_boot): use grub_mmap_get_lower,
38477
	grub_mmap_iterate and grub_mmap_get_upper
38478
	(grub_netbsd_boot): use grub_mmap_get_lower and grub_mmap_get_upper
38479
38480
2009-05-02  Bean  <bean123ch@gmail.com>
38481
38482
	* conf/common.rmk (grub_script.tab.c): Change normal/parser.y to
38483
	script/sh/parser.y.
38484
	(pkglib_MODULES): Add normal.mod and sh.mod.
38485
	(normal_SOURCES): New variable.
38486
	(normal_mod_CFLAGS): Likewise.
38487
	(normal_mod_LDFLAGS): Likewise.
38488
	(sh_mod_SOURCES): Likewise.
38489
	(sh_mod_CFLAGS): Likewise.
38490
	(sh_mod_LDFLAGS): Likewise.
38491
38492
	* conf/i386-pc.rmk (normal/lexer.c_DEPENDENCIES): Changed to
38493
	script/sh/lexer.c_DEPENDENCIES.
38494
	(kernel_img_SOURCES): Remove kern/rescue.c, and kern/reader.c,
38495
	kern/rescue_reader.c and kern/rescue_parser.c.
38496
	(kernel_img_HEADERS): Remove rescue.h, add reader.h.
38497
	(grub_emu_SOURCES): Change source files.
38498
	(pkglib_MODULES): Remove normal.mod.
38499
	(normal_SOURCES): Removed.
38500
	(normal_mod_CFLAGS): Likewise.
38501
	(normal_mod_LDFLAGS): Likewise.
38502
	* conf/i386-coreboot.rmk: Likewise.
38503
	* conf/i386-efi.rmk: Likewise.
38504
	* conf/i386-ieee1276.rmk: Likewise.
38505
	* conf/powerpc-ieee1275.rmk: Likewise.
38506
	* conf/sparc64-ieee1275.rmk: Likewise.
38507
	* conf/x86_64-efi.rmk: Likewise.
38508
38509
	* include/grub/command.h (grub_command_execute): New inline function.
38510
38511
	* include/grub/menu.h (grub_menu_entry): Removed commands field.
38512
38513
	* include/grub/normal.h: Remove <grub/setjmp.h>.
38514
	(grub_fs_module_list): Moved to normal/autofs.c.
38515
	(grub_exit_env): Removed.
38516
	(grub_command_execute): Likewise.
38517
	(grub_normal_menu_addentry): Renamed to grub_menu_addentry, removed
38518
	parameter script.
38519
	(read_command_list): New function declaration.
38520
	(read_fs_list): Likewise.
38521
38522
	* include/parser.h: Include <grub/reader.h>.
38523
	(grub_parser_split_cmdline): Change type of getline parameter.
38524
	(grub_parser): New structure.
38525
	(grub_parser_class): New variable.
38526
	(grub_parser_execute): New function declaration.
38527
	(grub_register_rescue_parser): Likewise.
38528
	(grub_parser_register): New inline function.
38529
	(grub_parser_unregister): Likewise.
38530
	(grub_parser_get_current): Likewise.
38531
	(grub_parser_set_current): Likewise.
38532
38533
	* include/grub/reader.h: New file.
38534
	* kern/reader.c: Likewise.
38535
	* kern/rescue_parser.c: Likewise.
38536
	* kern/rescue_reader.c: Likewise.
38537
	* normal/autofs.c: Likewise.
38538
	* normal/dyncmd.c: Likewise.
38539
38540
	* include/grub/rescue.h: Removed.
38541
	* normal/command.h: Likewise.
38542
38543
	* include/grub/script.h: Moved to ...
38544
	* include/grub/script_sh.h: ... Moved here.
38545
	* normal/execute.c: Moved to ...
38546
	* script/sh/execute.c: ... Moved here.
38547
	* normal/function.c: Moved to ...
38548
	* script/sh/function.c: ... Moved here.
38549
	* normal/lexer.c: Moved to ...
38550
	* script/sh/lexer.c: ... Moved here.
38551
	* normal/parser.y: Moved to ...
38552
	* script/sh/parser.y: ... Moved here.
38553
	* normal/script.c: Moved to ...
38554
	* script/sh/script.c: ... Moved here.
38555
38556
	* normal/main.c: Remove <grub/rescue.h> and <grub/script.h>, include
38557
	<grub/reader.h>.
38558
	(grub_exit_env): Removed.
38559
	(fs_module_list): Moved to normal/autofs.c.
38560
	(grub_file_getline): Don't handle comment here.
38561
	(free_menu): Skip removed field entry->commands.
38562
	(grub_normal_menu_addentry): Removed as grub_menu_entry, removed
38563
	script parameter.
38564
	(read_config_file): Removed nested parameter, change getline function.
38565
	(grub_enter_normal_mode): Removed.
38566
	(grub_dyncmd_dispatcher): Moved to normal/dyncmd.c.
38567
	(read_command_list): Likewise.
38568
	(autoload_fs_module): Moved to normal/autofs.c.
38569
	(read_fs_list): Likewise.
38570
	(reader_nested): New variable.
38571
	(grub_normal_execute): Run parser.sh to switch to sh parser.
38572
	(grub_cmd_rescue): Removed.
38573
	(cmd_normal): Removed.
38574
	(grub_cmd_normal): Unregister itself at the beginning. Don't register
38575
	rescue command.
38576
	(grub_cmdline_run): New function.
38577
	(grub_normal_reader_init): Likewise.
38578
	(grub_normal_read_line): Likewise.
38579
	(grub_env_write_pager): Likewise.
38580
	(cmdline): New variable.
38581
	(grub_normal_reader): Likewise.
38582
	(GRUB_MOD_INIT): Register normal reader and set as current, register
38583
	pager hook, register normal command with grub_register_command_prio,
38584
	so that it won't show up in command.lst.
38585
	(GRUB_MOD_FINI): Unregister normal reader, unhook pager, clear
38586
	grub_fs_autoload_hook.
38587
38588
	* normal/menu.c: Remove <grub/script.h>, add <grub/command.h>.
38589
	(grub_menu_execute_entry): Replace grub_script_execute with
38590
	grub_parser_execute, change parameter to grub_command_execute.
38591
38592
	* normal/menu_text.c: Remove <grub/script.h>.
38593
38594
	* normal/menu_entry.c: Remove <grub/script.h>, add <grub/command.h>
38595
	and <grub/parser.h>.
38596
	(run): Change editor_getline to use new parser interface. Change
38597
	parameter to grub_command_execute.
38598
38599
	* kern/main.c: Remove <grub/rescue.h>, include <grub/command.h>,
38600
	<grub/reader.h> and <grub/parser.h>.
38601
	(grub_load_normal_mode): Execute normal command.
38602
	(grub_main): Call grub_register_core_commands,
38603
	grub_register_rescue_parser and grub_register_rescue_reader, use
38604
	grub_reader_loop to enter input loop.
38605
38606
	* kern/parser.c (grub_parser_split_cmdline): Change type of
38607
	getline parameter.
38608
	(grub_parser_class): New variable.
38609
	(grub_parser_execute): New function.
38610
38611
	* loader/i386/multiboot.c: Remove <grub/rescue.h>.
38612
	* loader/multiboot2.c: Likewise.
38613
	* loader/sparc64/ieee1275/linux.c: Likewise.
38614
38615
	* util/grub-emu.c (read_command_list): New dummy function.
38616
38617
2009-05-02  Robert Millan  <rmh.grub@aybabtu.com>
38618
38619
	* util/deviceiter.c (grub_util_iterate_devices): Increase max drive
38620
	count to 16 for CCISS and IDA.
38621
38622
2009-05-02  Robert Millan  <rmh.grub@aybabtu.com>
38623
38624
	* normal/menu_text.c  (grub_wait_after_message): Print a newline
38625
	after waiting for user input.
38626
38627
	* loader/i386/linux.c: Include `<grub/normal.h>'.
38628
	(grub_cmd_linux): Improve the error message about `ask' mode, by
38629
	waiting for user input so it's not missed (we can do this, since
38630
	user requested interaction).
38631
38632
2009-05-02  Vladimir Serbinenko  <phcoder@gmail.com>
38633
38634
	Added missing lst to grub-mkrescue
38635
38636
	* util/i386/pc/grub-mkrescue.in: added ${input_dir}/handler.lst
38637
	and ${input_dir}/parttool.lst
38638
38639
2009-04-30  David S. Miller  <davem@davemloft.net>
38640
38641
	* util/hostdisk.c (device_is_wholedisk): New function.
38642
	(grub_util_biosdisk_get_grub_dev): Shortcut when hdg.start is
38643
	zero only if device_is_wholedisk() returns true.
38644
38645
	* util/hostdisk.c (convert_system_partition_to_system_disk):
38646
	Handle virtual disk devices named /dev/vdiskX as found on sparc
38647
	and powerpc.
38648
38649
	* kern/sparc64/ieee1275/init.c (grub_machine_set_prefix): If
38650
	lettered partition specifier is found, convert to numbered.
38651
38652
2009-04-29  David S. Miller  <davem@davemloft.net>
38653
38654
	* include/grub/powerpc/ieee1275/memory.h: Include ieee1275.h.
38655
	* include/grub/sparc64/ieee1275/memory.h: Likewise.
38656
38657
	* normal/command.c: Add missing newline at end of file.
38658
38659
	* commands/lsmmap.c (grub_cmd_lsmmap): Add casts to avoid printf
38660
	warnings.
38661
	* kern/ieee1275/openfw.c (grub_claimmap): Likewise.
38662
	* disk/ieee1275/ofdisk.c (grub_ofdisk_open, grub_ofdisk_close,
38663
	grub_ofdisk_read): Likewise, and deal similarly with the fact that
38664
	ihandles have a 32-bit type but need to be stored in a "void *".
38665
38666
2009-04-28  Pavel Roskin  <proski@gnu.org>
38667
38668
	* disk/fs_uuid.c (grub_fs_uuid_open): Use parent->data for dev,
38669
	not disk.  Adjust all dependencies.
38670
	(grub_fs_uuid_close): Use grub_device_close(), not
38671
	grub_disk_close().
38672
38673
	* disk/fs_uuid.c (grub_fs_uuid_open): Allocate memory to copy
38674
	parent's partition, don't copy it by reference, as it gets freed
38675
	on close.
38676
38677
2009-04-27  Vladimir Serbinenko  <phcoder@gmail.com>
38678
38679
	Preboot hooks support
38680
38681
	* commands/boot.c (struct grub_preboot_t): new declaration
38682
	(preboots_head): new variable
38683
	(preboots_tail): likewise
38684
	(grub_loader_register_preboot_hook): new function
38685
	(grub_loader_unregister_preboot_hook): likewise
38686
	(grub_loader_set): launch preboot hooks
38687
	* include/grub/loader.h (grub_loader_preboot_hook_prio_t): new type
38688
	(grub_loader_register_preboot_hook): new declaration
38689
	(grub_loader_unregister_preboot_hook): likewise
38690
38691
2009-04-27  Vladimir Serbinenko  <phcoder@gmail.com>
38692
38693
	Warning fix
38694
38695
	* disk/scsi.c (grub_scsi_open): added missing cast when
38696
	calling grub_dprintf
38697
38698
2009-04-26  Vladimir Serbinenko  <phcoder@gmail.com>
38699
38700
	Bug and warning fixes
38701
38702
	* include/grub/i386/pc/init.h (grub_stop_floppy): added missing
38703
	declaration
38704
	* commands/test.c (test_parse): fixed bug with file tests and corrected
38705
	declaration of find_file
38706
38707
2009-04-26  Pavel Roskin  <proski@gnu.org>
38708
38709
	* Makefile.in: Don't install empty manual pages if help2man is
38710
	missing.  Use help2man option for output, not shell redirection.
38711
38712
2009-04-26  David S. Miller  <davem@davemloft.net>
38713
38714
	* util/grub-mkdevicemap.c (make_device_map): Add missing
38715
	NESTED_FUNC_ATTR to process_device().
38716
38717
2009-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
38718
38719
	Test command
38720
38721
	* commands/test.c: rewritten to use bash-like test
38722
38723
2009-04-25  Vladimir Serbinenko  <phcoder@gmail.com>
38724
38725
	Parttool autoloading and improvements
38726
38727
	* Makefile.in (pkglib_DATA): add parttool.lst
38728
	(parttool.lst): new target
38729
	* genmk.rb: generate parttool-*
38730
	(CLEANFILES): add #{parttool}
38731
	(PARTTOOLFILES): new variable
38732
	* genparttoollist.sh: new file
38733
	* parttool/pcpart.c (grub_pcpart_boot): more feedback
38734
	(grub_pcpart_type): likewise
38735
	* commands/parttool.c (helpmsg): new variable
38736
	(grub_cmd_parttool): output help if not enough arguments are supplied
38737
	autoload modules
38738
	(GRUB_MOD_INIT(parttool)): use helpmsg
38739
38740
2009-04-24  David S. Miller  <davem@davemloft.net>
38741
38742
	Avoiding opening same device multiple times in device iterator.
38743
38744
	* kern/device.c: (grub_device_iterate): Define struct part_ent,
38745
	and use it to build a list of partitions in iterate_disk() and
38746
	iterate_partition().
38747
38748
	* disk/fs_uuid.c (grub_fs_uuid_close): Call grub_disk_close()
38749
	on disk->data.
38750
38751
	* disk/ieee1275/nand.c (grub_nand_iterate): Return
38752
	grub_devalias_iterate() result instead of unconditional 0.
38753
	* disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Likewise.
38754
	Also, capture hook return value, either directly or via
38755
	grub_children_iterate(), and propagate to caller.
38756
	* include/grub/ieee1275/ieee1275.h (grub_devalias_iterate,
38757
	grub_children_iterate): Return value is now 'int' instead of
38758
	'grub_err_t'.
38759
	* kern/ieee1275/openfw.c (grub_children_iterate): Fix to behave
38760
	like a proper iterator, stopping when hooks return non-zero.
38761
	(grub_devalias_iterate): Likewise.
38762
38763
2009-04-23  David S. Miller  <davem@davemloft.net>
38764
38765
	* kern/sparc64/ieee1275/openfw.c: Unused, delete.
38766
38767
2009-04-22  David S. Miller  <davem@davemloft.net>
38768
38769
	* kern/ieee1275/mmap.c (grub_machine_mmap_iterate): If size_cells
38770
	is larger than address_cells, use that value for address_cells too.
38771
38772
	* include/grub/ieee1275/ieee1275.h (IEEE1275_MAX_PROP_LEN,
38773
	IEEE1275_MAX_PATH_LEN): Define.
38774
	* kern/ieee1275/openfw.c (grub_children_iterate): Dynamically
38775
	allocate 'childtype', 'childpath', 'childname', and 'fullname'.
38776
	(grub_devalias_iterate): Dynamically allocate 'aliasname' and
38777
	'devtype'.  Explicitly NULL terminate devalias expansion.
38778
38779
	* util/sparc64/ieee1275/misc.c: New file.
38780
	* util/sparc64/ieee1275/grub-setup.c: New file.
38781
	* util/sparc64/ieee1275/grub-ofpathname.c: New file.
38782
	* util/sparc64/ieee1275/grub-mkimage.c: New file.
38783
	* util/sparc64/ieee1275/grub-install.in: New file.
38784
	* util/ieee1275/ofpath.c: New file.
38785
	* util/ieee1275/devicemap.c: New file.
38786
	* util/devicemap.c: New file.
38787
	* util/deviceiter.c: New file.
38788
	* kern/sparc64/ieee1275/init.c: New file.
38789
	* include/grub/util/ofpath.h: New file.
38790
	* include/grub/util/deviceiter.h: New file.
38791
	* util/grub-mkdevicemap.c: Include deviceiter.h.
38792
	Implement using grub_util_emit_devicemap_entry and
38793
	grub_util_iterate_devices.
38794
	* conf/i386-corebook.rmk: Build util/deviceiter.c and
38795
	util/devicemap.c into grub-mkdevicemap
38796
	* conf/i386-efi.rmk: Likewise.
38797
	* conf/i386-ieee1275.rmk: Likewise.
38798
	* conf/i386-pc.rmk: Likewise.
38799
	* conf/powerpc-ieee1275.rmk: Likewise.
38800
	* conf/sparc64-ieee1275.rmk: Add rules to build boot block
38801
	images and installation utilities.  Build kernel as image
38802
	instead of as elf binary.  Use common rules as much as possible.
38803
38804
2009-04-19  Vladimir Serbinenko  <phcoder@gmail.com>
38805
38806
	Correct GPT definition
38807
38808
	* include/grub/gpt_partition.h (grub_gpt_partentry): Corrected the type
38809
	of "attrib" member
38810
38811
2009-04-19  Felix Zielcke  <fzielcke@z-51.de>
38812
38813
	* INSTALL: Replace `autogen.sh' with `./autogen.sh'.
38814
38815
2009-04-19  David S. Miller  <davem@davemloft.net>
38816
38817
	* loader/sparc64/ieee1275/linux.c: Include grub/command.h
38818
	(grub_rescue_cmd_linux): Rename to...
38819
	(grub_cmd_linux): and fix prototype.
38820
	(grub_rescue_cmd_initrd): Rename to...
38821
	(grub_cmd_initrd): and fix prototype.
38822
	(cmd_linux, cmd_initrd): New.
38823
	(GRUB_MOD_INIT(linux)): Use grub_register_command().
38824
	(GRUB_MOD_FINI(linux): Use grub_unregister_command().
38825
38826
2009-04-17  Pavel Roskin  <proski@gnu.org>
38827
38828
	* bus/usb/ohci.c (grub_ohci_transaction): Fix incorrect printf
38829
	format.
38830
	(grub_ohci_transfer): Likewise.
38831
38832
	* bus/usb/usbtrans.c (grub_usb_control_msg): Warning fix.
38833
38834
	* loader/multiboot_loader.c (grub_cmd_multiboot_loader): Fix
38835
	return without a value.  Fix inconsistent indentation.
38836
38837
	* fs/i386/pc/pxe.c (grub_pxefs_dir): Fix function prototype to
38838
	match struct grub_fs.
38839
38840
	* disk/ata.c (grub_ata_pciinit): Use NESTED_FUNC_ATTR.
38841
	* bus/usb/ohci.c (grub_ohci_pci_iter): Likewise.
38842
	* bus/usb/uhci.c (grub_uhci_pci_iter): Likewise.
38843
	* commands/lspci.c (grub_lspci_iter): Likewise.
38844
38845
2009-04-16  Bean  <bean123ch@gmail.com>
38846
38847
	* commands/efi/loadbios.c (grub_cmd_fakebios): Add missing return
38848
	value.
38849
38850
2009-04-15  Pavel Roskin  <proski@gnu.org>
38851
38852
	* include/grub/types.h: Rename ULONG_MAX to GRUB_ULONG_MAX and
38853
	LONG_MAX to GRUB_LONG_MAX.  Introduce GRUB_LONG_MIN.  Update all
38854
	users of ULONG_MAX, LONG_MAX and LONG_MIN to use the new
38855
	definitions.
38856
38857
2009-04-15  Felix Zielcke  <fzielcke@z-51.de>
38858
38859
	* disk/lvm.c (grub_lvm_scan_device): Add `LVM' to the error messages,
38860
	that no multiple data or metadata areas are supported and `Unknown
38861
	metadata header'.
38862
38863
2009-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
38864
38865
	Move loader out of the kernel
38866
38867
	* kern/loader.c: moved to ...
38868
	* commands/boot.c: ... moved here
38869
	* commands/minicmd.c (grub_mini_cmd_boot): moved to ...
38870
	* commands/boot.c (grub_cmd_boot): moved here. All users updated
38871
	* include/grub/kernel.h (grub_machine_fini): export
38872
	* include/grub/loader.h (grub_loader_is_loaded): update declaration
38873
	(grub_loader_set): likewise
38874
	(grub_loader_unset): likewise
38875
	(grub_loader_boot): likewise
38876
	* conf/common.rmk: new module boot.mod
38877
	(pkglib_MODULES): add boot.mod
38878
	* conf/i386-coreboot.rmk (kernel_elf_SOURCES): remove kern/loader.c
38879
	(grub_emu_SOURCES): likewise
38880
	* conf/i386-efi.rmk (kernel_elf_SOURCES): likewise
38881
	(grub_emu_SOURCES): likewise
38882
	* conf/i386-ieee1275.rmk (kernel_elf_SOURCES): likewise
38883
	(grub_emu_SOURCES): likewise
38884
	* conf/i386-pc.rmk (kernel_elf_SOURCES): likewise
38885
	(grub_emu_SOURCES): likewise
38886
	* conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): likewise
38887
	(grub_emu_SOURCES): likewise
38888
	* conf/sparc64-ieee1275.rmk (kernel_elf_SOURCES): likewise
38889
	(grub_emu_SOURCES): likewise
38890
	* conf/x86_64-efi.rmk (kernel_elf_SOURCES): likewise
38891
	(grub_emu_SOURCES): likewise
38892
38893
2009-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
38894
38895
	use grub_lltoa instead of grub_itoa and grub_ltoa for all purposes
38896
38897
	* kern/misc.c (grub_itoa): Removed function
38898
	(grub_ltoa): likewise
38899
	(grub_vsprintf): use grub_lltoa
38900
38901
2009-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
38902
38903
	Restore grub-emu
38904
38905
	* conf/i386-pc.rmk (grub_emu_SOURCES): add normal/handler.c
38906
	* conf/i386-coreboot.rmk: likewise
38907
	* conf/i386-ieee1275.rmk: likewise
38908
	* conf/powerpc-ieee1275.rmk: likewise
38909
38910
2009-04-15  Felix Zielcke  <fzielcke@z-51.de>
38911
38912
	* INSTALL: Add that `./autogen.sh' needs to be run before
38913
	`./configure.'.
38914
38915
2009-04-14  Bean  <bean123ch@gmail.com>
38916
38917
	* Makefile.in (pkglib_DATA): Add handler.lst.
38918
	(handler.lst): New rule.
38919
38920
	* conf/i386-pc.rmk (normal_mod_SOURCES): Add normal/handler.c.
38921
	* conf/i386-coreboot.rmk: Likewise.
38922
	* conf/i386-ieee1275.rmk: Likewise.
38923
	* conf/i386-efi.rmk: Likewise.
38924
	* conf/x86_64-efi.rmk: Likewise.
38925
	* conf/powerpc-ieee1275.rmk: Likewise.
38926
	* conf/sparc64-ieee1275.rmk: Likewise.
38927
38928
	* genhandlerlist.sh: New file.
38929
38930
	* genmk.rb: Add rules to generate handler.lst.
38931
38932
	* include/grub/normal.h (grub_file_getline): New function definition.
38933
	(read_handler_list): Likewise.
38934
	(free_handler_list): Likewise.
38935
38936
	* include/grub/term.h (grub_term_register_input): Add name parameter
38937
	for auto generation of handler.lst.
38938
	(grub_term_register_output): Likewise.
38939
38940
	* normal/handler.c: New file.
38941
38942
	* normal/main.c (get_line): Renamed to grub_file_getline.
38943
	(read_config_file): Use the newly renamed grub_file_getline.
38944
	(read_command_list): Likewise.
38945
	(read_fs_list): Likewise.
38946
	(grub_normal_execute): Call read_handler_list to parse handler.lst.
38947
	(GRUB_MOD_FINI): Call free_handler_list to free handler list.
38948
38949
	* term/efi/console.c (grub_console_init): Add name parameter for auto
38950
	generation of handler.lst.
38951
	* term/gfxterm.c: Likewise.
38952
	* term/i386/pc/at_keyboard.c: Likewise.
38953
	* term/i386/pc/console.c: Likewise.
38954
	* term/i386/pc/serial.c: Likewise.
38955
	* term/i386/pc/vesafb.c: Likewise.
38956
	* term/i386/pc/vga.c: Likewise.
38957
	* term/i386/pc/vga_text.c: Likewise.
38958
	* term/ieee1275/ofconsole.c: Likewise.
38959
	* term/usb_keyboard.c: Likewise.
38960
38961
2009-04-14  Bean  <bean123ch@gmail.com>
38962
38963
	* util/grub-pe2elf.c (write_symbol_table): Terminate short name symbol
38964
	properly with null character.
38965
38966
2009-04-14  Felix Zielcke  <fzielcke@z-51.de>
38967
38968
	* configure: Remove.
38969
	* config.h.in: Likewise.
38970
	* stamp-h.in: Likewise.
38971
	* DISTLIST: Likewise.
38972
	* conf/common.mk: Likewise.
38973
	* conf/i386-coreboot.mk: Likewise.
38974
	* conf/i386-efi.mk: Likewise.
38975
	* conf/i386-ieee1275.mk: Likewise.
38976
	* conf/i386.mk: Likewise.
38977
	* conf/i386-pc.mk: Likewise.
38978
	* conf/powerpc-ieee1275.mk: Likewise.
38979
	* conf/sparc64-ieee1275.mk: Likewise.
38980
	* conf/x86_64-efi.mk: Likewise.
38981
38982
	* INSTALL: Remove the sentence that Ruby and autoconf are only required if you
38983
	develop on GRUB.
38984
38985
2009-04-14  John Stanley  <jpsinthemix@verizon.net>
38986
	    David S. Miller  <davem@davemloft.net>
38987
38988
	* util/hostdisk.c (make_device_name): Fix buffer length
38989
	calculations.
38990
38991
2009-04-14  Felix Zielcke  <fzielcke@z-51.de>
38992
38993
	* util/hostdisk.c [__FreeBSD__ || __FreeBSD_kernel__]: Include
38994
	<sys/param.h> and <sys/sysctl.h>.
38995
	(open_device) [__FreeBSD__ || __FreeBSD_kernel_]: Use sysctlgetbyname()
38996
	to add 0x10 to `kern.geom.debugflags' if it's not already set, before
38997
	opening the device and reset them afterwards.
38998
38999
2009-04-13  Pavel Roskin  <proski@gnu.org>
39000
39001
	* conf/common.rmk (grub_fstest_SOURCES): Add normal/datetime.c.
39002
	Reported by John Stanley <jpsinthemix@verizon.net>
39003
39004
2009-04-13  Robert Millan  <rmh@aybabtu.com>
39005
39006
	* util/grub.d/10_freebsd.in: Detect Debian GNU/kFreeBSD and use
39007
	that name for menuentries when appropriate.
39008
39009
2009-04-13  Felix Zielcke  <fzielcke@z-51.de>
39010
39011
	* util/grub.d/10_freebsd.in: Add a missing `fi'.
39012
39013
2009-04-13  Robert Millan  <rmh@aybabtu.com>
39014
39015
	* loader/i386/linux.c (grub_cmd_linux): Don't pass `vga=ask' parameter
39016
	to Linux, simply abort telling the user it's no longer supported.
39017
39018
2009-04-13  Felix Zielcke  <fzielcke@z-51.de>
39019
39020
	* util/grub.d/10_freebsd.in: Don't exit if /boot/devices.hints
39021
	doesn't exist.  Check also for /boot/kernel/kernel.gz.  Print
39022
	`freebsd_loadenv' only when devices.hints exist.
39023
39024
2009-04-13  Pavel Roskin  <proski@gnu.org>
39025
39026
	* term/usb_keyboard.c (grub_usb_keyboard_getkey): Warning fixes.
39027
39028
2009-04-13  Felix Zielcke  <fzielcke@z-51.de>
39029
39030
	* util/i386/pc/grub-install.in (install_drive): Remove the BSD
39031
	partition number.
39032
	(grub_drive): Likewise.
39033
39034
2009-04-13  David S. Miller  <davem@davemloft.net>
39035
39036
	* kern/sparc64/ieee1275/ieee1275.c: New file.
39037
	* include/grub/sparc64/ieee1275/ieee1275.h (IEEE1275_MAP_WRITE,
39038
	IEEE1275_MAP_READ, IEEE1275_MAP_EXEC, IEEE1275_MAP_LOCKED,
39039
	IEEE1275_MAP_CACHED, IEEE1275_MAP_SE, IEEE1275_MAP_GLOBAL,
39040
	IEEE1275_MAP_IE, IEEE1275_MAP_DEFAULT): Define.
39041
	(grub_ieee1275_map_physical, grub_ieee1275_claim_vaddr,
39042
	grub_ieee1275_alloc_physmem): Declare new exported functions.
39043
39044
	* include/grub/sparc64/ieee1275/loader.h: New file.
39045
	* include/grub/sparc64/ieee1275/memory.h: Likewise.
39046
	* include/grub/sparc64/kernel.h: Likewise.
39047
	* loader/sparc64/ieee1275/linux.c: Likewise.
39048
39049
	* conf/common.rmk (grub_probe_SOURCES): Add Sun partition module.
39050
	(grub_fstest_SOURCES): Likewise.
39051
39052
	* util/hostdisk.c (make_device_name): Do not make any assumptions
39053
	about the length of drive names.
39054
39055
	* kern/dl.c (grub_dl_load_file): Close file immediately when
39056
	we are done using it.
39057
39058
2009-04-12  David S. Miller  <davem@davemloft.net>
39059
39060
	* kern/misc.c (grub_ltoa): Fix cast when handling negative
39061
	values.  Noticed by Pavel Roskin.
39062
39063
	* configure.ac: Check for __bswapsi2 and__bswapdi2 using
39064
	target compiler.
39065
39066
	* genmk.rb: Add more flexible image type specification, also
39067
	pass --strip-unneeded to objcopy.
39068
	* conf/i386-pc.rmk: Use *_FORMAT.
39069
	* conf/i386-pc.mk: Rebuilt.
39070
39071
	* disk/ieee1275/ofdisk.c (struct ofdisk_hash_ent): New struct.
39072
	(OFDISK_HASH_SZ): Define.
39073
	(ofdisk_hash): New hash table.
39074
	(ofdisk_hash_fn, ofdisk_hash_find, ofdisk_hash_add): New functions.
39075
	(grub_ofdisk_open): Use ofdisk_hash_ent address as disk->id
39076
	instead of device phandle which is not unique.
39077
39078
	* kern/sparc64/ieee1275/init.c: Delete, replace with...
39079
	* kern/sparc64/ieee1275/crt0.S: assembler implementation.
39080
	* include/grub/sparc64/ieee1275/kernel.h: Declare grub_prefix[].
39081
	(GRUB_MOD_ALIGN, GRUB_MOD_GAP, GRUB_KERNEL_MACHINE_TOTAL_MODULE_SIZE,
39082
	GRUB_KERNEL_MACHINE_KERNEL_IMAGE_SIZE,
39083
	GRUB_KERNEL_MACHINE_COMPRESSED_SIZE, GRUB_KERNEL_MACHINE_PREFIX,
39084
	GRUB_KERNEL_MACHINE_DATA_END): Define.
39085
	(grub_kernel_image_size, grub_total_module_size): Declare.
39086
39087
2009-04-12  Pavel Roskin  <proski@gnu.org>
39088
39089
	 * configure.ac: Change the logic when we check for target tools.
39090
	 Do it when the target is specified and it's different from the
39091
	 specified value of the host.
39092
39093
2009-04-11  Felix Zielcke  <fzielcke@z-51.de>
39094
39095
	* util/hostdisk.c [__FreeBSD_kernel__]: Include sys/disk.h.
39096
	(grub_util_biosdisk_open) [__FreeBSD_kernel__]: Add support for
39097
	GNU/kFreeBSD. Check if a device is a character device. Use
39098
	DIOCGMEDIASIZE to get the size.
39099
	(convert_system_partition_to_system_disk) [__FreeBSD_kernel__]: Add
39100
	support for GNU/kFreeBSD.
39101
	(grub_util_biosdisk_get_grub_dev) [__FreeBSD_kernel__]: Check if OS_DEV
39102
	is a character device instead of a block device. Add support for
39103
	FreeBSD device names.
39104
39105
	* util/getroot.c (find_root_device) [__FreeBSD_kernel__]: Check if ENT
39106
	is a character device instead of a block device.
39107
39108
	* util/grub-probe.c (probe) [__FreeBSD_kernel__]: Check if DEVICE_NAME
39109
	is a character device instead of a block device.
39110
39111
2009-04-11  Andrey Shuvikov  <mr_hyro@yahoo.com>
39112
39113
	* util/hostdisk.c [__FreeBSD__]: Include sys/disk.h.
39114
	(grub_util_biosdisk_open) [__FreeBSD__]: Add support for
39115
	FreeBSD. Check if a device is a character device. Use
39116
	DIOCGMEDIASIZE to get the size.
39117
	(convert_system_partition_to_system_disk) [__FreeBSD__]: Add
39118
	support for FreeBSD.
39119
	(grub_util_biosdisk_get_grub_dev) [__FreeBSD__]: Check if OS_DEV
39120
	is a character device instead of a block device. Add support for
39121
	FreeBSD device names.
39122
39123
	* util/getroot.c (find_root_device) [__FreeBSD__]: Check if ENT is
39124
	a character device instead of a block device.
39125
	(grub_util_check_char_device): New function.
39126
39127
	* util/grub-probe.c (probe) [__FreeBSD__]: Check if DEVICE_NAME is
39128
	a character device instead of a block device.
39129
39130
	* include/grub/util/getroot.h (grub_util_check_char_device): New
39131
	prototype.
39132
39133
2009-04-11  David S. Miller  <davem@davemloft.net>
39134
39135
	* conf/sparc64-ieee1275.rmk (kernel_img_LDFLAGS): Link with
39136
	static libgcc.
39137
	* configure.ac: Check for __bswapsi2 and __bswapdi2 presence.
39138
	* include/grub/sparc64/libgcc.h (__bswapsi2): Export libgcc
39139
	function, if present.
39140
	(__bswapdi2): Likewise.
39141
39142
	* include/grub/sparc64/ieee1275/boot.h: New file.
39143
	* boot/sparc64/ieee1275/boot.S: Likewise.
39144
	* boot/sparc64/ieee1275/diskboot.S: Likewise.
39145
39146
	* kern/misc.c (grub_ltoa): New function.
39147
	(grub_vsprintf): Use it to format 'long' integers.
39148
39149
2009-04-10  David S. Miller  <davem@davemloft.net>
39150
39151
	* disk/ieee1275/nand.c (grub_nand_open): All ieee1275 call arg
39152
	slots are of type grub_ieee1275_cell_t.
39153
	(grub_nand_read): Likewise.
39154
	* kern/ieee1275/ieee1275.c (IEEE1275_PHANDLE_INVALID,
39155
	IEEE1275_IHANDLE_INVALID): Use grub_ieee1275_cell_t since these
39156
	macros are used to compare values in arg/ret block of the call.
39157
	(grub_ieee1275_finddevice, grub_ieee1275_get_property,
39158
	grub_ieee1275_next_property, grub_ieee1275_get_property_length,
39159
	grub_ieee1275_instance_to_package, grub_ieee1275_package_to_path,
39160
	grub_ieee1275_instance_to_path, grub_ieee1275_write,
39161
	grub_ieee1275_read, grub_ieee1275_seek, grub_ieee1275_peer,
39162
	grub_ieee1275_child, grub_ieee1275_parent, grub_ieee1275_open,
39163
	grub_ieee1275_close, grub_ieee1275_set_property,
39164
	grub_ieee1275_set_color): All ieee1275 call arg slots are of type
39165
	grub_ieee1275_cell_t.
39166
	* kern/ieee1275/openfw.c (grub_map): Likewise.
39167
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_ihandle_t,
39168
	grub_ieee1275_phandle_t): Define as grub_unit32_t type.
39169
39170
	* kern/ieee1275/init.c (grub_machine_init): Make 'actual' grub_ssize_t.
39171
	* kern/ieee1275/openfw.c (grub_children_iterate): Likewise.
39172
	(grub_devalias_iterate): Likewise.
39173
39174
2009-04-10  Vladimir Serbinenko  <phcoder@gmail.com>
39175
39176
	UFS improvements
39177
39178
	* fs/ufs.c (INODE_NBLOCKS): new definition
39179
	(struct grub_ufs_dirent): added fields for non-BSD dirents
39180
	(grub_ufs_get_file_block): fixed double indirect handling
39181
	(grub_ufs_lookup_symlink): use more robust way to determine whether
39182
	symlink is inline
39183
	(grub_ufs_find_file): support for non-BSD dirents
39184
	(grub_ufs_dir): support for non-BSD dirents
39185
39186
2009-04-10  Bean  <bean123ch@gnail.com>
39187
39188
	* include/grub/efi/api.h (grub_efi_configuration_table): Add packed
39189
	attribute, otherwise the size would be wrong for i386 platform.
39190
39191
	* include/grub/pci.h (grub_pci_read_word): New inline function.
39192
	(grub_pci_read_byte): Likewise.
39193
	(grub_pci_write): Likewise.
39194
	(grub_pci_write_word): Likewise.
39195
	(grub_pci_write_byte): Likewise.
39196
39197
	* include/grub/pci.h (grub_pci_iteratefunc_t): Add NESTED_FUNC_ATTR.
39198
39199
	* loader/i386/efi/linux.c (fake_bios_data): Moved to loadbios module.
39200
	(find_framebuf): Scan pci to locate the frame buffer address.
39201
39202
	* commands/efi/fixvideo.c: New file.
39203
39204
	* commands/efi/loadbios.c: Likewise.
39205
39206
	* commands/memrw.c: Likewise.
39207
39208
	* util/grub-dumpbios.in: Likewise.
39209
39210
	* conf/common.rmk (grub-dumpbios): New utility.
39211
	(pkglib_MODULES): New module memrw.mod.
39212
	(memrw_mod_SOURCE): New macro.
39213
	(memrw_mod_CFLAGS): Likewise.
39214
	(memrw_mod_LDFLAGS): Likewise.
39215
39216
	* conf/i386-efi.rmk (pkglib_MODULES): New module loadbios.mod and
39217
	fixvideo.mod.
39218
	(loadbios_mod_SOURCE): New macro.
39219
	(loadbios_mod_CFLAGS): Likewise.
39220
	(loadbios_mod_LDFLAGS): Likewise.
39221
	(fixvideo_mod_SOURCE): Likewise.
39222
	(fixvideo_mod_CFLAGS): Likewise.
39223
	(fixvideo_mod_LDFLAGS): Likewise.
39224
39225
	* conf/x86_64.rmk (pkglib_MODULES): New module loadbios.mod and
39226
	fixvideo.mod.
39227
	(loadbios_mod_SOURCE): New macro.
39228
	(loadbios_mod_CFLAGS): Likewise.
39229
	(loadbios_mod_LDFLAGS): Likewise.
39230
	(fixvideo_mod_SOURCE): Likewise.
39231
	(fixvideo_mod_CFLAGS): Likewise.
39232
	(fixvideo_mod_LDFLAGS): Likewise.
39233
39234
2009-04-08  Felix Zielcke  <fzielcke@z-51.de>
39235
39236
	* disk/lvm.c (grub_lvm_scan_device): Add a missing NULL check.
39237
39238
2009-04-07  David S. Miller  <davem@davemloft.net>
39239
39240
	* kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Add
39241
	support for R_SPARC_OLO10 relocations.  Fix compile warning for
39242
	R_SPARC_WDISP30 case.
39243
	* kern/sparc64/cache.S: Fix grub_arch_sync_caches implementation.
39244
39245
2009-04-06  Pavel Roskin  <proski@gnu.org>
39246
39247
	* include/grub/misc.h (ARRAY_SIZE): New macro.
39248
	* include/grub/i386/linux.h (GRUB_LINUX_VID_MODE_VESA_START):
39249
	New macro.
39250
	* loader/i386/linux.c (allocate_pages): Use free_pages().
39251
	(grub_linux_unload): Don't use free_pages().
39252
	(grub_linux_boot): Prevent accessing linux_vesafb_modes with a
39253
	wrong index.  Treat all other modes as text modes.
39254
	(grub_cmd_linux): Initialize vid_mode unconditionally to
39255
	GRUB_LINUX_VID_MODE_NORMAL.  Recognize and support "vga=ask".
39256
39257
	* commands/help.c (print_command_help): Use cmd->prio, not
39258
	cmd->flags to check for GRUB_PRIO_LIST_FLAG_ACTIVE.
39259
39260
2009-04-06  Vladimir Serbinenko  <phcoder@gmail.com>
39261
39262
	Parttool
39263
39264
	* parttool/pcpart.c: new file
39265
	* commands/parttool.c: likewise
39266
	* conf/common.rmk (pkglib_MODULES): Added parttool.mod and pcpart.mod
39267
	(parttool_mod_SOURCES): new variable
39268
	(parttool_mod_CFLAGS): likewise
39269
	(parttool_mod_LDFLAGS): likewise
39270
	(pcpart_mod_SOURCES): likewise
39271
	(pcpart_mod_CFLAGS): likewise
39272
	(pcpart_mod_LDFLAGS): likewise
39273
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): added commands/parttool.c
39274
	and parttool/pcpart.c
39275
	* conf/i386-efi.rmk: likewise
39276
	* conf/i386-ieee1275.rmk: likewise
39277
	* conf/i386-pc.rmk: likewise
39278
	* conf/powerpc-ieee1275.rmk: likewise
39279
	* conf/sparc64-ieee1275.rmk: likewise
39280
	* conf/x86_64-ieee1275.rmk: likewise
39281
39282
2009-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
39283
39284
	Support for mtime and further expandability of dir command
39285
39286
	* include/grub/lib/datetime.h: moved to ...
39287
	* include/grub/datetime.h: ... moved here and added
39288
	declaration of grub_unixtime2datetime. All users updated
39289
	* include/grub/fs.h: new syntax for dir and mtime functions in
39290
	struct grub_fs
39291
	* include/grub/fshelp.h: new declarations of GRUB_FSHELP_TYPE_MASK
39292
	and GRUB_FSHELP_FLAGS_MASK
39293
	* commands/ls.c (grub_ls_list_files): Write mtime in long format
39294
	* fs/ext2.c (grub_ext2_dir): use new dir syntax and supply mtime
39295
	(grub_ext2_mtime): new function
39296
	* fs/hfsplus.c (grub_hfsplus_dir): use new dir syntax and supply mtime
39297
	(grub_hfsplus_mtime): new function
39298
	* fs/ufs.c (GRUB_UFS_ATTR_TYPE): new definition
39299
	(GRUB_UFS_ATTR_FILE): likewise
39300
	(GRUB_UFS_ATTR_LNK): likewise
39301
	(struct grub_ufs_sblock): new fields mtime
39302
	(grub_ufs_read_inode): new parameter to read inode to a separate buffer
39303
	all users updated
39304
	(grub_ufs_dir): mtime support
39305
	(grub_ufs_mtime): new function
39306
	* fs/affs.c (grub_affs_dir): use new dir syntax
39307
	* fs/afs.c (grub_afs_dir): likewise
39308
	* fs/cpio.c (grub_cpio_dir): likewise
39309
	* fs/fat.c (grub_fat_find_dir): likewise
39310
	* fs/hfs.c (grub_hfs_dir): likewise
39311
	* fs/iso9660.c (grub_iso9660_dir): likewise
39312
	* fs/jfs.c (grub_jfs_dir): likewise
39313
	* fs/minix.c (grub_minix_dir): likewise
39314
	* fs/ntfs.c (grub_ntfs_dir): likewise
39315
	* fs/reiserfs.c (grub_reiserfs_dir): likewise
39316
	* fs/sfs.c (grub_sfs_dir): likewise
39317
	* fs/xfs.c (grub_xfs_dir): likewise
39318
	* util/hostfs.c (grub_hostfs_dir): likewise
39319
	* lib/datetime.c: moved to ...
39320
	* normal/datetime.c: ... moved here
39321
	(grub_unixtime2datetime): new function
39322
	* kern/rescue.c (grub_rescue_print_files): use new dir syntax
39323
	* normal/completion.c (iterate_dir): use new dir syntax
39324
	* normal/misc.c (grub_normal_print_device_info): tell the
39325
	last modification time of a volume
39326
	* kern/fs.c (grub_fs_probe): updated dummy function to use new syntax
39327
	* conf/common.rmk: added lib/datetime.c to ls.mod
39328
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): add normal/datetime.c
39329
	(normal_mod_SOURCES): likewise
39330
	(datetime_mod_SOURCES): Removed lib/datetime.c
39331
	* conf/i386-efi.rmk: likewise
39332
	* conf/i386-ieee1275.rmk: likewise
39333
	* conf/i386-pc.rmk: likewise
39334
	* conf/powerpc-ieee1275.rmk: likewise
39335
	* conf/sparc64-ieee1275.rmk: likewise
39336
	* conf/x86_64-efi.rmk: likewise
39337
39338
2009-04-05  Vladimir Serbinenko  <phcoder@gmail.com>
39339
39340
	Trim trailing spaces in FAT label and support mtools-like labels
39341
39342
	* fs/fat.c (grub_fat_iterate_dir): New function based
39343
	on grub_fat_find_dir
39344
	(grub_fat_find_dir): use grub_fat_iterate_dir
39345
	(grub_fat_label): likewise
39346
39347
2009-04-04  Vladimir Serbinenko  <phcoder@gmail.com>
39348
39349
	* conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): add list.h
39350
	and command.h
39351
	remove extraneous kernel_elf_HEADERS
39352
39353
2009-04-04  Bean  <bean123ch@gnail.com>
39354
39355
	* include/grub/util/misc.h: Add dummy function fsync for mingw.
39356
39357
	* util/misc.c: Likewise.
39358
39359
2009-04-04  Yoshinori K. Okuji  <okuji@enbug.org>
39360
39361
	* loader/i386/efi/linux.c (fake_bios_data): Use grub_dprintf
39362
	instead of grub_printf.
39363
39364
2009-04-03  Robert Millan  <rmh@aybabtu.com>
39365
39366
	* loader/i386/linux.c (grub_linux_setup_video): Fill
39367
	`params->{red,green,blue,reserved}_{mask_size,field_pos}' with
39368
	values from `mode info' structure instead of hardcoded
39369
	values.
39370
39371
2009-04-01  Pavel Roskin  <proski@gnu.org>
39372
39373
	* Makefile.in: Remove all references to MODULE_LDFLAGS, it's
39374
	unused now.
39375
	* genmk.rb: Likewise.
39376
	* configure.ac: Likewise.
39377
39378
2009-04-01  Manoel Abranches  <mrabran@linux.vnet.ibm.com>
39379
39380
	* aclocal.m4: Move --build-id=none from MODULE_LDFLAGS to
39381
	TARGET_LDFLAGS.  This corrects a problem with grub-mkelfimage.
39382
39383
2009-04-01  David S. Miller  <davem@davemloft.net>
39384
39385
	* normal/sparc64/setjmp.S: Fix setjmp implementation.
39386
	* include/grub/sparc64/setjmp.h (grub_jmp_buf): Update.
39387
	(grub_setjmp): Mark with 'returns_twice' attribute.
39388
	* include/grub/i386/setjmp.h (grub_setjmp): Likewise
39389
	* include/grub/powerpc/setjmp.h (grub_setjmp): Likewise.
39390
	* include/grub/x86_64/setjmp.h (grub_setjmp): Likewise.
39391
39392
2009-04-01  Robert Millan  <rmh@aybabtu.com>
39393
39394
	Reapply fix from 2008-07-28 which was accidentally reverted; also
39395
	perform the same fix to a similar check in same function.
39396
39397
	* disk/raid.c (grub_raid_scan_device): Do not abort when two disks
39398
	with the same number are found, just use issue a warning with
39399
	grub_dprintf(), as this error has been reported to be non-fatal.
39400
39401
2009-03-31  Pavel Roskin  <proski@gnu.org>
39402
39403
	* aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): Provide safe default
39404
	for cross-compilation.
39405
1.5.2 by Robert Millan
Import upstream version 1.96+20090401
39406
2009-03-30  Robert Millan  <rmh@aybabtu.com>
39407
39408
	Fix i386-ieee1275 build.
39409
39410
	* include/grub/i386/ieee1275/loader.h (grub_multiboot2_real_boot):
39411
	Remove declaration.
39412
39413
2009-03-30  Pavel Roskin  <proski@gnu.org>
39414
39415
	* fs/hfs.c (grub_hfs_strncasecmp): Integrate into ...
39416
	(grub_hfs_cmp_catkeys): ... this.  Don't assume strings to be
39417
	zero-terminated, rely only on the strlen value.  Fix comparison
39418
	of strings differing in length.
39419
39420
2009-03-30  Robert Millan  <rmh@aybabtu.com>
39421
39422
	* loader/i386/linux.c (grub_cmd_linux): Check for zImage before
39423
	checking for abi version.  Improve error messages on BIOS to notify
39424
	user about `linux16' command.
39425
39426
2009-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
39427
39428
	Leak fixes
39429
39430
	* kern/disk.c (grub_disk_cache_store): Invalidate previous cache
39431
	in case of collision
39432
	* disk/scsi.c (grub_scsi_open): free scsi in case of error
39433
39434
2009-03-29  Robert Millan  <rmh@aybabtu.com>
39435
39436
	* loader/i386/linux.c (grub_cmd_linux): Parse "vga=" parameter and
39437
	set `vid_mode' accordingly.
39438
	(grub_linux_boot): Process `vid_mode' and set video mode.
39439
39440
2009-03-29  Robert Millan  <rmh@aybabtu.com>
39441
39442
	* util/grub.d/10_linux.in (linux_entry): New function.
39443
	Factorize generation of Linux boot entries.
39444
39445
2009-03-29  Yoshinori K. Okuji  <okuji@enbug.org>
39446
39447
	Make the format of Environment Block plain text. The boot loader
39448
	part is not tested well yet.
17.2.9 by Robert Millan
* New SVN snapshot.
39449
1.5.2 by Robert Millan
Import upstream version 1.96+20090401
39450
	* util/grub-editenv.c (DEFAULT_ENVBLK_SIZE): New macro.
39451
	(buffer): Removed.
39452
	(envblk): Likewise.
39453
	(usage): Remove "info" and "clear". Add "unset". Update the
39454
	description of "set", as this does not delete variables any
39455
	longer.
39456
	(create_envblk_file): Complete rewrite.
39457
	(open_envblk_file): Likewise.
39458
	(cmd_info): Removed.
39459
	(cmd_list): Likewise.
39460
	(cmd_set): Likewise.
39461
	(cmd_clear): Likewise.
39462
	(list_variables): New function.
39463
	(write_envblk): Likewise.
39464
	(set_variables): Likewise.
39465
	(unset_variables): Likewise.
39466
	(main): Complete rewrite.
39467
39468
	* commands/loadenv.c (buffer): Removed.
39469
	(envblk): Likewise.
39470
	(open_envblk_file): New function.
39471
	(read_envblk_file): Complete rewrite.
39472
	(grub_cmd_load_env): Likewise.
39473
	(grub_cmd_list_env): Likewise.
39474
	(struct blocklist): New struct.
39475
	(free_blocklists): New function.
39476
	(check_blocklists): Likewise.
39477
	(write_blocklists): Likewise.
39478
	(grub_cmd_save_env): Complete rewrite.
39479
39480
	* include/grub/lib/envblk.h (GRUB_ENVBLK_SIGNATURE): Replaced with
39481
	a plain text signature.
39482
	(GRUB_ENVBLK_MAXLEN): Removed.
39483
	(struct grub_envblk): Complete rewrite.
39484
	(grub_envblk_find): Removed.
39485
	(grub_envblk_insert): Likewise.
39486
	(grub_envblk_open): New prototype.
39487
	(grub_envblk_set): Likewise.
39488
	(grub_envblk_delete): Put const to VALUE.
39489
	(grub_envblk_iterate): Put const to NAME and VALUE.
39490
	(grub_envblk_close): New prototype.
39491
	(grub_envblk_buffer): New inline function.
39492
	(grub_envblk_size): Likewise.
39493
39494
	* lib/envblk.c: Include grub/mm.h.
39495
	(grub_env_find): Removed.
39496
	(grub_envblk_open): New function.
39497
	(grub_envblk_close): Likewise.
39498
	(escaped_value_len): Likewise.
39499
	(find_next_line): Likewise.
39500
	(grub_envblk_insert): Removed.
39501
	(grub_envblk_set): New function.
39502
	(grub_envblk_delete): Complete rewrite.
39503
	(grub_envblk_iterate): Likewise.
39504
39505
2009-03-28  Robert Millan  <rmh@aybabtu.com>
39506
39507
	* conf/i386-pc.rmk (pkglib_MODULES): Add `linux16.mod'.
39508
	(linux16_mod_SOURCES, linux16_mod_CFLAGS, linux16_mod_LDFLAGS): New
39509
	variables.  Use 16-bit loader.
39510
	(linux_mod_SOURCES, linux_mod_CFLAGS, linux_mod_LDFLAGS): Use 32-bit
39511
	loader.
39512
	* kern/i386/loader.S (grub_linux_boot): Rename to ...
39513
	(grub_linux16_boot): ... this.  Update all users.
39514
	* loader/i386/linux.c (grub_linux32_boot): Rename to ...
39515
	(grub_linux_boot): ... this.  Update all users.
39516
39517
	* loader/i386/pc/linux.c (GRUB_MOD_INIT(linux)): Rename to ...
39518
	(GRUB_MOD_INIT(linux16)): ... this.  Rename `linux' and `initrd'
39519
	commands to `linux16' and `initrd16'.
39520
	(GRUB_MOD_FINI(linux)): Rename to ...
39521
	(GRUB_MOD_FINI(linux16)): ... this.
39522
39523
2009-03-24  Pavel Roskin  <proski@gnu.org>
39524
39525
	* genmk.rb: Define ASM_FILE for *.S files for *.lst generation,
39526
	not just for compilation.
39527
39528
2009-03-22  Vladimir Serbinenko  <phcoder@gmail.com>
39529
39530
	Move multiboot helper out of kernel
39531
39532
	* conf/i386-pc.rmk (multiboot_mod_SOURCES): Add
39533
	`loader/i386/multiboot_helper.S'.
39534
	* conf/i386-coreboot.rmk: Likewise
39535
	* conf/i386-ieee1275.rmk: Likewise
39536
39537
	* kern/i386/loader.S: Move multiboot helpers from here...
39538
	* loader/i386/multiboot_helper.S: ...moved here
39539
	* include/grub/i386/loader.h: Move declarations of multiboot
39540
	helpers from here...
39541
	* include/grub/i386/multiboot.h: ...moved here
39542
	* loader/i386/multiboot.c: Added include of grub/cpu/multiboot.h
39543
39544
2009-03-22  Yoshinori K. Okuji  <okuji@enbug.org>
39545
39546
	* kern/env.c (grub_env_context_open): Added an argument to specify
39547
	whether a new context inherits exported variables from current
39548
	one. This is useful when making a sandbox to interpret a config
39549
	file.
39550
	All callers updated.
39551
39552
	* include/grub/env.h (grub_env_context_open): Updated the prototype.
39553
39554
2009-03-22  Yoshinori K. Okuji  <okuji@enbug.org>
39555
39556
	* kern/env.c (grub_env_context_close): Fix memory leaks.
39557
39558
2009-03-22  Yoshinori K. Okuji  <okuji@enbug.org>
39559
39560
	* normal/main.c (grub_normal_execute): Added an argument
39561
	BATCH to specify if an interactive interface should be provided
39562
	after reading a config file.
39563
	All callers updated.
39564
	(read_command_list): Prevent being executed twice.
39565
	(read_fs_list): Likewise.
39566
39567
	* include/grub/normal.h (grub_normal_execute): Updated the
39568
	prototype.
39569
39570
2009-03-22  Pavel Roskin  <proski@gno.org>
39571
39572
	* kern/powerpc/ieee1275/startup.S: Replace EXT_C(start) with
39573
	_start.
39574
	* kern/i386/pc/startup.S: Likewise.
39575
	* kern/i386/efi/startup.S: Likewise.
39576
	* kern/i386/ieee1275/startup.S: Likewise.
39577
	* kern/i386/coreboot/startup.S: Likewise.
39578
	* kern/x86_64/efi/startup.S: Likewise.
39579
39580
	* aclocal.m4 (grub_CHECK_START_SYMBOL): Remove.
39581
	* configure.ac: Don't call grub_CHECK_START_SYMBOL.
39582
	* kern/i386/pc/startup.S: Use _start instead of START_SYMBOL.
39583
39584
2009-03-21  Vladimir Serbinenko  <phcoder@gmail.com>
39585
39586
	Bugfixes in multiboot for bugs uncovered by solaris kernel.
39587
39588
	* loader/i386/multiboot_elfxx.c (grub_multiboot_load_elf): Corrected
39589
	limit detection.
39590
	Use vaddr of correct segment for entry_point.
39591
39592
2009-03-21  Bean  <bean123ch@gmail.com>
39593
39594
	* commands/blocklist.c: Add include file <grub/command.h>, remove
39595
	<grub/normal.h> and <grub/arg.h>.
39596
	(grub_cmd_blocklist): Use the new command interface.
39597
	(GRUB_MOD_INIT): Likewise.
39598
	(GRUB_MOD_FINI): Likewise.
39599
	* commands/boot.c: Likewise.
39600
	* commands/cat.c: Likewise.
39601
	* commands/cmp.c: Likewise.
39602
	* commands/configfile.c: Likewise.
39603
	* commands/crc.c: Likewise.
39604
	* commands/echo.c: Likewise.
39605
	* commands/halt.c: Likewise.
39606
	* commands/handler.c: Likewise.
39607
	* commands/hdparm.c: Likewise.
39608
	* commands/help.c: Likewise.
39609
	* commands/hexdump.c: Likewise.
39610
	* commands/loadenv.c: Likewise.
39611
	* commands/ls.c: Likewise.
39612
	* commands/lsmmap.c: Likewise.
39613
	* commands/lspci.c: Likewise.
39614
	* commands/loadenv.c: Likewise.
39615
	* commands/read.c: Likewise.
39616
	* commands/reboot.c: Likewise.
39617
	* commands/search.c: Likewise.
39618
	* commands/sleep.c: Likewise.
39619
	* commands/test.c: Likewise.
39620
	* commands/usbtest.c: Likewise.
39621
	* commands/videotest.c: Likewise.
39622
	* commands/i386/cpuid.c: Likewise.
39623
	* commands/i386/pc/halt.c: Likewise.
39624
	* commands/i386/pc/play.c: Likewise.
39625
	* commands/i386/pc/pxecmd.c: Likewise.
39626
	* commands/i386/pc/vbeinfo.c: Likewise.
39627
	* commands/i386/pc/vbetest.c: Likewise.
39628
	* commands/ieee1275/suspend.c: Likewise.
39629
	* disk/loopback.c: Likewise.
39630
	* font/font_cmd.c: Likewise.
39631
	* hello/hello.c: Likewise.
39632
	* loader/efi/appleloader.c: Likewise.
39633
	* loader/efi/chainloader.c: Likewise.
39634
	* loader/i386/bsd.c: Likewise.
39635
	* loader/i386/efi/linux.c: Likewise.
39636
	* loader/i386/ieee1275/linux.c: Likewise.
39637
	* loader/i386/linux.c: Likewise.
39638
	* loader/i386/pc/chainloader.c: Likewise.
39639
	* loader/i386/pc/linux.c: Likewise.
39640
	* loader/powerpc/ieee1275/linux.c: Likewise.
39641
	* loader/multiboot_loader.c: Likewise.
39642
	* term/gfxterm.c: Likewise.
39643
	* term/i386/pc/serial.c: Likewise.
39644
	* term/terminfo.c: Likewise.
39645
39646
	* term/i386/pc/vesafb.c: Removed <grub/arg.h>.
39647
	* term/i386/pc/vga.c: Likewise.
39648
	* video/readers/jpeg.c: Likewise.
39649
	* video/readers/png.c: Likewise.
39650
	* video/readers/tga.c: Likewise.
39651
39652
	* util/grub-fstest (cmd_loopback): Removed.
39653
	(cmd_blocklist): Likewise.
39654
	(cmd_ls): Likewise.
39655
	(grub_register_command): Likewise.
39656
	(grub_unregister_command): Likewise.
39657
	(execute_command): Use grub_command_find to locate command and execute
39658
	it.
39659
39660
	* include/grub/efi/chainloader.h: Removed.
39661
	* loader/efi/chainloader_normal.c: Likewise.
39662
	* loader/i386/bsd_normal.c: Likewise.
39663
	* loader/i386/pc/chainloader_normal.c: Likewise.
39664
	* loader/i386/pc/multiboot_normal.c: Likewise.
39665
	* loader/linux_normal.c: Likewise.
39666
	* loader/multiboot_loader_normal.c: Likewise.
39667
	* loader/powerpc/ieee1275/linux_normal.c: Likewise.
39668
39669
	* gencmdlist.sh: Scan new registration command grub_register_extcmd
39670
	and grub_register_command_p1.
39671
39672
	* conf/common.rmk (grub_fstest_SOURCES): Add kern/list.c,
39673
	kern/command.c, lib/arg.c and commands/extcmd.c.
39674
	(pkglib_MODULES): Remove boot.mod, and minicmd.mod and extcmd.mod.
39675
	(minicmd_mod_SOURCES): New variable.
39676
	(minicmd_mod_CFLAGS): Likewise.
39677
	(minicmd_mod_LDFLAGS): Likewise.
39678
	(extcmd_mod_SOURCES): Likewise.
39679
	(extcmd_mod_CFLAGS): Likewise.
39680
	(extcmd_mod_LDFLAGS): Likewise.
39681
	(boot_mod_SOURCES): Removed.
39682
	(boot_mod_CFLAGS): Likewise.
39683
	(boot_mod_LDFLAGS): Likewise.
39684
39685
	* conf/i386-pc.rmk (kernel_img_SOURCES): Add kern/command.c and
39686
	kern/corecmd.c.
39687
	(kernel_img_HEADERS): Add command.h.
39688
	(grub_emu_SOURCES): Remove commands/boot.c and normal/arg.c, add
39689
	commands/minicmd.c, kern/command.c, kern/corecmd.c, commands/extcmd.c
39690
	and lib/arg.c.
39691
	(pkglib_MODULES): Change _linux.mod, _chain.mod, _bsd.mod and
39692
	_multiboot.mod as linux.mod, chain.mod, bsd.mod and multiboot.mod,
39693
	remove the corresponding normal mode command.
39694
	(normal_mod_SOURCES): Remove normal/arg.c.
39695
	* conf/i386-coreboot.rmk: Likewise.
39696
	* conf/i386-efi.rmk: Likewise.
39697
	* conf/i386-ieee1275.rmk: Likewise.
39698
	* conf/powerpc-ieee1275.rmk: Likewise.
39699
	* conf/x86_64-efi.rmk: Likewise.
39700
39701
	* include/grub/arg.h: Move from here ...
39702
	* include/grub/lib/arg.h: ... to here.
39703
39704
	* normal/arg.c: Move from here ...
39705
	* lib/arg.c: ... to here.
39706
39707
	* commands/extcmd.c: New file.
39708
	* commands/minicmd.c: Likewise.
39709
	* include/grub/command.h: Likewise.
39710
	* include/grub/extcmd.h: Likewise.
39711
	* kern/command.c: Likewise.
39712
	* kern/corecmd.c: Likewise.
39713
39714
	* kern/list.c (grub_list_iterate): Return int instead of void.
39715
	(grub_list_insert): New function.
39716
	(grub_prio_list_insert): Likewise.
39717
39718
	* kern/rescue.c (grub_rescue_command): Removed.
39719
	(grub_rescue_command_list): Likewise.
39720
	(grub_rescue_register_command): Likewise.
39721
	(grub_rescue_unregister_command): Likewise.
39722
	(grub_rescue_cmd_boot): Move to minicmd.c
39723
	(grub_rescue_cmd_help): Likewise.
39724
	(grub_rescue_cmd_info): Likewise.
39725
	(grub_rescue_cmd_boot): Likewise.
39726
	(grub_rescue_cmd_testload): Likewise.
39727
	(grub_rescue_cmd_dump): Likewise.
39728
	(grub_rescue_cmd_rmmod): Likewise.
39729
	(grub_rescue_cmd_lsmod): Likewise.
39730
	(grub_rescue_cmd_exit): Likewise.
39731
	(grub_rescue_print_devices): Moved to corecmd.c.
39732
	(grub_rescue_print_files): Likewise.
39733
	(grub_rescue_cmd_ls): Likewise.
39734
	(grub_rescue_cmd_insmod): Likewise.
39735
	(grub_rescue_cmd_set): Likewise.
39736
	(grub_rescue_cmd_unset): Likewise.
39737
	(attempt_normal_mode): Use grub_command_find to get normal module.
39738
	(grub_enter_rescue_mode): Use grub_register_core_commands to register
39739
	commands, remove grub_rescue_register_command calls.
39740
39741
	* normal/command.c (grub_register_command): Removed.
39742
	(grub_unregister_command): Likewise.
39743
	(grub_command_find): Likewise.
39744
	(grub_iterate_commands): Likewise.
39745
	(rescue_command): Likewise.
39746
	(export_command): Moved to corecmd.c.
39747
	(set_command): Removed.
39748
	(unset_command): Likewise.
39749
	(insmod_command): Likewise.
39750
	(rmmod_command): Likewise.
39751
	(lsmod_command): Likewise.
39752
	(grub_command_init): Likewise.
39753
39754
	* normal/completion.c (iterate_command): Use cmd->prio to check for
39755
	active command.
39756
	(complete_arguments): Use grub_extcmd_t structure to find options.
39757
	(grub_normal_do_completion): Change function grub_iterate_commands to
39758
	grub_command_iterate.
39759
39760
	* normal/execute.c (grub_script_execute_cmd): No need to parse
39761
	argument here.
39762
39763
	* normal/main.c (grub_dyncmd_dispatcher): New function.
39764
	(read_command_list): Register unload commands as dyncmd.
39765
	(grub_cmd_normal): Use new command interface, register rescue,
39766
	unregister normal at entry, register normal, unregister rescue at exit.
39767
39768
	* include/grub/list.h (grub_list_test_t): New type.
39769
	(grub_list_iterate): Return int instead of void.
39770
	(grub_list_insert): New function.
39771
	(GRUB_AS_NAMED_LIST_P): New macro.
39772
	(GRUB_AS_PRIO_LIST): Likewise.
39773
	(GRUB_AS_PRIO_LIST_P): Likewise.
39774
	(GRUB_PRIO_LIST_PRIO_MASK): New constant.
39775
	(GRUB_PRIO_LIST_FLAG_ACTIVE): Likewise.
39776
	(grub_prio_list): New structure.
39777
	(grub_prio_list_insert): New function.
39778
	(grub_prio_list_remove): New inline function.
39779
39780
	* include/grub/normal.h: Remove <grub/arg.h>, add <grub/command.h>.
39781
	(GRUB_COMMAND_FLAG_CMDLINE): Moved to command.h.
39782
	(GRUB_COMMAND_FLAG_MENU): Likewise.
39783
	(GRUB_COMMAND_FLAG_BOTH): Likewise.
39784
	(GRUB_COMMAND_FLAG_TITLE): Likewise.
39785
	(GRUB_COMMAND_FLAG_NO_ECHO): Likewise.
39786
	(GRUB_COMMAND_FLAG_NO_ARG_PARSE): Removed.
39787
	(GRUB_COMMAND_FLAG_NOT_LOADED): Likewise.
39788
	(grub_command): Likewise.
39789
	(grub_register_command): Likewise.
39790
	(grub_command_find): Likewise.
39791
	(grub_iterate_commands): Likewise.
39792
	(grub_command_init): Likewise.
39793
	(grub_arg_parse): Likewise.
39794
	(grub_arg_show_help): Likewise.
39795
39796
	* include/grub/rescue.h (grub_rescue_register_command): Removed.
39797
	(grub_rescue_unregister_command): Likewise.
39798
39799
	* include/grub/i386/bsd.h: Remove grub_rescue_cmd_freebsd,
39800
	grub_rescue_cmd_openbsd, grub_rescue_cmd_netbsd,
39801
	grub_rescue_cmd_freebsd_loadenv and grub_rescue_cmd_freebsd_module.
39802
39803
	* include/grub/i386/efi/loader.h: Remove grub_rescue_cmd_linux and
39804
	grub_rescue_cmd_initrd.
39805
	* include/grub/i386/loader.h: Likewise.
39806
	* include/grub/x86_64/loader.h: Likewise.
39807
39808
	* include/grub/i386/pc/chainloader.h: Remove grub_chainloader_cmd.
39809
39810
2009-03-21  Bean  <bean123ch@gmail.com>
39811
39812
	* util/hostdisk.c (read_device_map): Use grub_util_get_disk_size
39813
	instead of stat in mingw environment.
39814
39815
	* util/misc.c (grub_millisleep): Use Sleep in mingw environment.
39816
39817
	* aclocal.m4 (grub_CHECK_LINK_DIR): New function.
39818
39819
	* configure.ac: Use grub_CHECK_LINK_DIR to determine whether to use
39820
	AC_CONFIG_LINKS.
39821
39822
2009-03-21  Bean  <bean123ch@gmail.com>
39823
39824
	* fs/ext2.c (grub_ext2_mount): Change errno to GRUB_ERR_BAD_FS for
39825
	out of range error.
39826
39827
2009-03-18  Michel Dänzer  <michel@daenzer.net>
39828
39829
	* fs/ext2.c (grub_ext2_read_block): Take endianness into account when
39830
	checking inode flags for EXT4_EXTENTS_FLAG.
39831
39832
2009-03-18  Robert Millan  <rmh@aybabtu.com>
39833
39834
	* loader/i386/linux.c: Include `<grub/video.h>' and
39835
	`<grub/i386/pc/vbe.h>'..
39836
	(grub_linux_setup_video): New function.  Loosely based on the EFI one.
39837
	(grub_linux32_boot): Attempt to configure video settings with
39838
	grub_linux_setup_video().
39839
	(grub_rescue_cmd_linux): Set noreturn=0 in grub_loader_set, in order
39840
	to avoid grub_console_fini() which would step out of graphical mode
39841
	unconditionally.
39842
1.3.3 by Colin Watson
Import upstream version 1.96+20090523
39843
2009-03-14  Robert Millan  <rmh@aybabtu.com>
39844
39845
	Fix build on powerpc.
39846
	* conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): Add `handler.h'.
39847
39848
2009-03-12  Vladimir Serbinenko  <phcoder@gmail.com>
39849
39850
	* term/gfxterm.c (GRUB_MOD_FINI(term_gfxterm)): Correct name of
39851
	background image command.
39852
39853
2009-03-12  Colin D Bennett  <colin@gibibit.com>
39854
39855
	* term/gfxterm.c (draw_cursor): Ensure character is redrawn.
39856
	(grub_gfxterm_putchar): Extract pairs of identical calls to
39857
	draw_cursor out of conditional blocks.
39858
39859
2009-03-11  Pavel Roskin  <proski@gnu.org>
39860
39861
	* fs/hfs.c (grub_hfs_strncasecmp): New function.
39862
	(grub_hfs_cmp_catkeys): Use HFS specific string comparison.
39863
39864
2009-03-11  Robert Millan  <rmh@aybabtu.com>
39865
39866
	* loader/i386/multiboot_elfxx.c
39867
	(CONCAT(grub_multiboot_load_elf, XX)): Do not reject ET_DYN files.
39868
39869
2009-03-11  Felix Zielcke  <fzielcke@z-51.de>
39870
39871
	* conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add `kern/list.c' and
39872
	`kern/handler.c'.
39873
39874
2009-03-11  Robert Millan  <rmh@aybabtu.com>
39875
39876
	* loader/i386/multiboot.c (code_size): New variable.
39877
	(grub_multiboot): Define offsets by adding to `code_size' rather
1.5.2 by Robert Millan
Import upstream version 1.96+20090401
39878
	than subtracting from `grub_multiboot_payload_size'.  Provide
1.3.3 by Colin Watson
Import upstream version 1.96+20090523
39879
	4-byte alignment to MBI and others by increasing
1.5.2 by Robert Millan
Import upstream version 1.96+20090401
39880
	`boot_loader_name_length' appropriately.
1.3.3 by Colin Watson
Import upstream version 1.96+20090523
39881
39882
	* loader/i386/multiboot_elfxx.c
39883
	(CONCAT(grub_multiboot_load_elf, XX)): Initialize `code_size'.
39884
39885
2009-03-09  Felix Zielcke  <fzielcke@z-51.de>
39886
39887
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Remove duplicated
39888
	`fs/ext2.c'.
39889
39890
2009-03-08  Robert Millan  <rmh@aybabtu.com>
39891
39892
	Make loader/i386/linux.c usable on i386-pc again.
39893
39894
	* kern/i386/pc/init.c (grub_machine_init): Disable addition of low
39895
	memory to heap.
39896
	* loader/i386/linux.c [GRUB_MACHINE_PCBIOS] (allocate_pages): Remove
39897
	`#error' stanza.
39898
39899
2009-03-07  Bean  <bean123ch@gmail.com>
39900
39901
	* loader/i386/efi/linux.c (grub_rescue_cmd_initrd): Fix a bug in initrd
39902
	allocation.
39903
39904
2009-03-06  Robert Millan  <rmh@aybabtu.com>
39905
39906
	Fix display issue on terminals with screen size other than 80x25
39907
	(e.g. gfxterm with resolution higher than 640x480).
39908
39909
	* normal/main.c (grub_normal_init_page): Display title text in a
1.5.2 by Robert Millan
Import upstream version 1.96+20090401
39910
	position relative to the center of the terminal instead of relying
1.3.3 by Colin Watson
Import upstream version 1.96+20090523
39911
	on a hardcoded offset.
39912
39913
2009-03-04  Robert Millan  <rmh@aybabtu.com>
39914
39915
	Filter /etc/grub.d/10_* so that only add-ons for native kernels are
39916
	installed.
39917
39918
	* Makefile.in (host_kernel): New variable.
39919
	* conf/common.rmk (grub-mkconfig_SCRIPTS): Conditionalize all 10_*.in
39920
	scripts instead of just the windows one.
39921
	* configure.ac: Initialize and AC_SUBST `host_kernel'.
39922
39923
2009-03-04  Felix Zielcke  <fzielcke@z-51.de>
39924
39925
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `kern/list.c' and
39926
	`kern/handler.c'.
39927
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
39928
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
39929
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
39930
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
39931
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
39932
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
39933
39934
2009-03-04  Felix Zielcke  <fzielcke@z-51.de>
39935
39936
	* partmap/pc.c (pc_partition_map_iterate): Skip over invalid BSD partitions
39937
	or if there's no space for the disk label and print the partition number on a
39938
	invalid magic.
39939
39940
2009-03-04  Felix Zielcke  <fzielcke@z-51.de>
39941
39942
	* util/misc.c: Include <time.h>.
39943
	(grub_millisleep): New function.
39944
39945
2009-03-04  Bean  <bean123ch@gmail.com>
39946
39947
	* configure.ac: Only test -mcmodel=large option in x86_64-efi, also add
39948
	another option -mno-red-zone.
39949
39950
	* commands/handler.c: Change module description.
39951
39952
	* kern/handler.c: Add missing space at the end of description line.
39953
39954
	* kern/list.c: Likewise.
39955
39956
2009-03-03  Robert Millan  <rmh@aybabtu.com>
39957
39958
	Move more components to the relocation area, and fix mbi pointer
39959
	handling to use the destination rather than the origin (thanks to
39960
	Vladimir Serbinenko for spotting).
39961
39962
	* loader/i386/multiboot.c (mbi_dest): New variable.
39963
	(grub_multiboot_boot): Use `mbi_dest' instead of `mbi'.
39964
	(grub_multiboot): Put cmdline, boot_loader_name and mbi in the
39965
	relocation area.
39966
39967
2009-03-01  Bean  <bean123ch@gmail.com>
39968
39969
	* include/grub/efi/api.h (GRUB_EFI_MPS_TABLE_GUID): New constant.
39970
	(GRUB_EFI_ACPI_TABLE_GUID): Likewise.
39971
	(GRUB_EFI_ACPI_20_TABLE_GUID): Likewise.
39972
	(GRUB_EFI_SMBIOS_TABLE_GUID): Likewise.
39973
39974
	* loader/i386/efi/linux.c (acpi_guid): New variable.
39975
	(acpi_guid): Likewise.
39976
	(EBDA_SEG_ADDR): New constant.
39977
	(LOW_MEM_ADDR): Likewise.
39978
	(FAKE_EBDA_SEG): Likewise.
39979
	(fake_bios_data): New function.
39980
	(grub_linux_boot): Call fake_bios_data.
39981
39982
2009-03-01  Bean  <bean123ch@gmail.com>
39983
39984
	* commands/terminal.c: Removed.
39985
39986
	* commands/handler.c: New file.
39987
39988
	* include/grub/list.h: Likewise.
39989
39990
	* include/grub/handler.h: Likewise.
39991
39992
	* kern/list.c: Likewise.
39993
39994
	* kern/handler.c: Likewise.
39995
39996
	* kern/term.h: Include header file <grub/handler.h>.
39997
	(grub_term_input): Move next field to the beginning.
39998
	(grub_term_output): Likewise.
39999
	(grub_term_input_class): New variable.
40000
	(grub_term_output_class): Likewise.
40001
	(grub_term_register_input): Changed to inline function.
40002
	(grub_term_register_output): Likewise.
40003
	(grub_term_unregister_input): Likewise.
40004
	(grub_term_unregister_output): Likewise.
40005
	(grub_term_set_current_input): Likewise.
40006
	(grub_term_set_current_output): Likewise.
40007
	(grub_term_get_current_input): Likewise.
40008
	(grub_term_get_current_output): Likewise.
40009
	(grub_term_iterate_input): Removed.
40010
	(grub_term_iterate_output): Likewise.
40011
40012
	* kern/term.c (grub_term_list_input): Removed.
40013
	(grub_term_list_output): Likewise.
40014
	(grub_term_input_class): New variable.
40015
	(grub_term_output_class): Likewise.
40016
	(grub_cur_term_input): Change variable as macro.
40017
	(grub_cur_term_output): Likewise.
40018
	(grub_term_register_input): Removed.
40019
	(grub_term_register_output): Likewise.
40020
	(grub_term_unregister_input): Likewise.
40021
	(grub_term_unregister_output): Likewise.
40022
	(grub_term_set_current_input): Likewise.
40023
	(grub_term_set_current_output): Likewise.
40024
	(grub_term_iterate_input): Likewise.
40025
	(grub_term_iterate_output): Likewise.
40026
	(grub_term_get_current_input): Likewise.
40027
	(grub_term_get_current_output): Likewise.
40028
40029
	* util/grub-editenv.c: Include header file <grub/handler.h>.
40030
	(grub_term_get_current_input): Removed.
40031
	(grub_term_get_current_output): Likewise.
40032
	(grub_term_input_class): New variable.
40033
	(grub_term_output_class): Likewise.
40034
40035
	* util/grub-fstest.c (grub_term_get_current_input): Removed.
40036
	(grub_term_get_current_output): Likewise.
40037
	(grub_term_input_class): New variable.
40038
	(grub_term_output_class): Likewise.
40039
40040
	* util/grub-probe.c (grub_term_get_current_input): Removed.
40041
	(grub_term_get_current_output): Likewise.
40042
	(grub_term_input_class): New variable.
40043
	(grub_term_output_class): Likewise.
40044
40045
	* util/i386/pc/grub-setup.c (grub_term_get_current_input): Removed.
40046
	(grub_term_get_current_output): Likewise.
40047
	(grub_term_input_class): New variable.
40048
	(grub_term_output_class): Likewise.
40049
40050
	* conf/common.rmk (pkglib_MODULES): Replace terminal with handler.
40051
	(terminal_mod_SOURCES): Likewise.
40052
	(terminal_mod_CFLAGS): Likewise.
40053
	(terminal_mod_LDFLAGS): Likewise.
40054
40055
	* conf/i386-pc.rmk (grub_emu_SOURCES): Replace terminal.c with
40056
	handler.c.
40057
	(kernel_img_SOURCES): Add list.c and handler.c.
40058
	(kernel_img_HEADERS): Add list.h and handler.h.
40059
40060
	* conf/i386-efi.rmk (grub_emu_SOURCES): Replace terminal.c with
40061
	handler.c.
40062
	(kernel_mod_SOURCES): Add list.c and handler.c.
40063
	(kernel_mod_HEADERS): Add list.h and handler.h.
40064
40065
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Replace terminal.c with
40066
	handler.c.
40067
	(kernel_elf_SOURCES): Add list.c and handler.c.
40068
	(kernel_elf_HEADERS): Add list.h and handler.h.
40069
40070
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Replace terminal.c with
40071
	handler.c.
40072
	(kernel_elf_SOURCES): Add list.c and handler.c.
40073
	(kernel_elf_HEADERS): Add list.h and handler.h.
40074
40075
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Replace terminal.c with
40076
	handler.c.
40077
	(kernel_mod_SOURCES): Add list.c and handler.c.
40078
	(kernel_mod_HEADERS): Add list.h and handler.h.
40079
40080
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Replace terminal.c with
40081
	handler.c.
40082
	(kernel_elf_SOURCES): Add list.c and handler.c.
40083
	(kernel_elf_HEADERS): Add list.h and handler.h.
40084
40085
2009-02-27  Robert Millan  <rmh@aybabtu.com>
40086
40087
	Factorize elf32 / elf64 code in Multiboot loader.  This will
40088
	prevent it from getting out of sync again.
40089
40090
	* loader/i386/multiboot.c (grub_multiboot_is_elf32,
40091
	grub_multiboot_load_elf32, grub_multiboot_is_elf64,
40092
	grub_multiboot_load_elf64): Move from here ...
40093
	* loader/i386/multiboot_elfxx.c (grub_multiboot_is_elf,
40094
	grub_multiboot_load_elf): ... to here (new file).
40095
40096
2009-02-27  Robert Millan  <rmh@aybabtu.com>
40097
40098
	* util/grub.d/10_linux.in: Rename "single-user mode" to
40099
	"recovery mode".
40100
40101
2009-02-27  Vladimir Serbinenko  <phcoder@gmail.com>
40102
40103
	Don't leak in SCSI code.
40104
	* disk/scsi.c (grub_scsi_close): free `scsi'.
40105
40106
2009-02-27  Robert Millan  <rmh@aybabtu.com>
40107
40108
	* loader/i386/pc/multiboot.c: Move from here ...
40109
	* loader/i386/multiboot.c: ... to here.  Update all users.
40110
40111
2009-02-27  Robert Millan  <rmh@aybabtu.com>
40112
40113
	Patch from Alexandre Bique <bique.alexandre@gmail.com>
40114
	* util/i386/pc/grub-setup.c (setup): Fix directory path.
40115
40116
2009-02-27  Krzysztof Smiechowicz  <deadwood@wp.pl>
40117
40118
	* fs/sfs.c (grub_sfs_read_extent): Correction to traversing extent
40119
	b-tree.
40120
40121
2009-02-27  Robert Millan  <rmh@aybabtu.com>
40122
40123
	* kern/misc.c (grub_strtoull): Fix bug (it mistakenly parsed the
40124
	`0x' qualifier as 0 when base is specified as parameter).
40125
40126
2009-02-24  Bean  <bean123ch@gmail.com>
40127
40128
	* configure.ac: Check for -mcmodel=large in x86_64 target.
40129
40130
	* include/grub/efi/api.h (efi_call_10): New macro.
40131
	(efi_wrap_10): New function.
40132
40133
	* include/grub/efi/pe32.h (GRUB_PE32_REL_BASE_HIGH): New macro.
40134
	(GRUB_PE32_REL_BASED_HIGH): Likewise.
40135
	(GRUB_PE32_REL_BASED_LOW): Likewise.
40136
	(GRUB_PE32_REL_BASED_HIGHLOW): Likewise.
40137
	(GRUB_PE32_REL_BASED_HIGHADJ): Likewise.
40138
	(GRUB_PE32_REL_BASED_MIPS_JMPADDR): Likewise.
40139
	(GRUB_PE32_REL_BASED_SECTION): Likewise.
40140
	(GRUB_PE32_REL_BASED_REL): Likewise.
40141
	(GRUB_PE32_REL_BASED_IA64_IMM64): Likewise.
40142
	(GRUB_PE32_REL_BASED_DIR64): Likewise.
40143
	(GRUB_PE32_REL_BASED_HIGH3ADJ): Likewise.
40144
40145
	* kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Fixed relocation
40146
	issue.
40147
40148
	* kern/x86_64/efi/callwrap.S (efi_wrap_6): Bug fix.
40149
	(efi_wrap_10): New function.
40150
40151
	* kern/x86_64/efi/startup.S (codestart): Use relative addressing.
40152
40153
	* loader/efi/appleloader.c (devpath_5): Add support for late 2008
40154
	MB/MBP model (NV chipset).
40155
	(devdata_devs): Add devpath_5 to the list.
40156
40157
	* load/i386/efi/linux.c (video_base): Remove variable.
40158
	(RGB_MASK): New macro.
40159
	(RGB_MAGIC): Likewise.
40160
	(LINE_MIN): Likewise.
40161
	(LINE_MAX): Likewise.
40162
	(FBTEST_STEP): Likewise.
40163
	(FBTEST_COUNT): Likewise.
40164
	(fb_list): New variable.
40165
	(grub_find_video_card): Remove function.
40166
	(find_framebuf): New function.
40167
	(grub_linux_setup_video): Use find_framebuf to get frame buffer and
40168
	line length.
40169
40170
	* util/i386/efi/grub-mkimage.c (grub_reloc_section): Fix relocation
40171
	problem for x86_64.
40172
40173
2009-02-22  Vesa Jääskeläinen  <chaac@nic.fi>
40174
40175
	Patch #25624 by Kevin Lacquement <kevin@lacqui>.
40176
40177
	* util/grub-mkconfig.in: Use ${grub_mkdevicemap} instead of hard
40178
	coding tool name.
40179
40180
2009-02-22  Robert Millan  <rmh@aybabtu.com>
40181
40182
	* include/multiboot.h (MULTIBOOT_INFO_ALIGN): New macro.
40183
	* loader/i386/pc/multiboot.c (grub_multiboot): Include the MBI
40184
	in our relocation, instead of using it directly from heap.  Also
40185
	use `MULTIBOOT_INFO_ALIGN' to ensure it is aligned.
40186
40187
2009-02-21  Robert Millan  <rmh@aybabtu.com>
40188
40189
	Implement USB keyboard support (based on patch by Marco Gerards)
40190
40191
	* conf/i386-pc.rmk (pkglib_MODULES): Add `usb_keyboard.mod'.
40192
	(usb_keyboard_mod_SOURCES, usb_keyboard_mod_CFLAGS)
40193
	(usb_keyboard_mod_LDFLAGS): New variables.
40194
40195
	* term/usb_keyboard.c: New file.
40196
40197
2009-02-14  Vladimir Serbinenko  <phcoder@gmail.com>
40198
40199
	Corrected wrong declaration
40200
40201
	* kern/disk.c: corrected declaration of grub_disk_ata_pass_through.
40202
40203
2009-02-14  Christian Franke  <franke@computer.org>
40204
40205
	* commands/lspci.c (grub_pci_classes): Add `SATA Controller'.
40206
	(grub_lspci_iter): Print class code and programming interface byte.
40207
40208
2009-02-14  Christian Franke  <franke@computer.org>
40209
40210
	* gendistlist.sh: Ignore `.svn' directories.
40211
40212
2009-02-14  Felix Zielcke  <fzielcke@z-51.de>
40213
40214
	* fs/fat.c: Add 2009 to Copyright line.
40215
40216
2009-02-14  Christian Franke  <franke@computer.org>
40217
40218
	* commands/hdparm.c: New file.  Provides `hdparm' command
40219
	which sends ATA commands via grub_disk_ata_pass_through ().
40220
40221
	* conf/i386-pc.rmk: Add ata_pthru.mod and hdparm.mod.
40222
40223
	* disk/ata.c: Include <grub/ata.h>.  Move <grub/misc.h>
40224
	and <grub/cpu/io.h> to include/grub/ata.h.
40225
	(enum grub_ata_addressing_t): Move to include/grub/ata.h.
40226
	(GRUB_CDROM_SECTOR_SIZE): Remove.
40227
	(GRUB_ATA_*): Move to include/grub/ata.h.
40228
	(GRUB_ATAPI_*): Likewise.
40229
	(enum grub_ata_commands): Likewise.
40230
	(enum grub_ata_timeout_milliseconds): Likewise.
40231
	(struct grub_ata_device): Likewise.
40232
	(grub_ata_regset): Likewise.
40233
	(grub_ata_regget): Likewise.
40234
	(grub_ata_regset2): Likewise.
40235
	(grub_ata_regget2): Likewise.
40236
	(grub_ata_check_ready): Likewise.
40237
	(grub_ata_wait_not_busy): Remove static, exported in
40238
	include/grub/ata.h.
40239
	(grub_ata_wait_drq): Likewise.
40240
	(grub_ata_pio_read): Likewise.
40241
40242
	* disk/ata_pthru.c: New file.  Provides grub_ata_pass_through ()
40243
	function for hdparm.mod.
40244
40245
	* include/grub/ata.h: New file, contains declarations from
40246
	disk/ata.c.
40247
	(enum grub_ata_commands): Add new commands for commands/hdparm.c.
40248
40249
	* include/grub/disk.h (grub_disk_ata_pass_through_parms): New struct.
40250
	(grub_disk_ata_pass_through): New exported variable.
40251
40252
	* kern/disk.c (grub_disk_ata_pass_through): New variable.
40253
40254
2009-02-13  Colin D Bennett  <colin@gibibit.com>
40255
40256
	Support multiple fallback entries, and provide an API to support
40257
	executing default+fallback menu entries.  Renamed the `terminal' menu
40258
	viewer to `text'.
40259
40260
	* include/grub/normal.h (grub_normal_text_menu_viewer): New global
40261
	variable declaration.
40262
	(grub_menu_execute_callback): New structure declaration.
40263
	(grub_menu_execute_callback_t): New typedef.
40264
	(grub_menu_execute_with_fallback): New function declaration.
40265
	(grub_menu_get_entry): Likewise.
40266
	(grub_menu_get_timeout): Likewise.
40267
	(grub_menu_set_timeout): Likewise.
40268
40269
	* normal/main.c (GRUB_MOD_INIT(normal)): Refer to new variable name.
40270
40271
	* normal/menu.c (grub_wait_after_message): Moved to
40272
	`normal/menu_text.c'.
40273
	(draw_border): Likewise.
40274
	(print_message): Likewise.
40275
	(print_entry): Likewise.
40276
	(print_entries): Likewise.
40277
	(grub_menu_init_page): Likewise.
40278
	(get_entry_number): Likewise.
40279
	(print_timeout): Likewise.
40280
	(run_menu): Likewise.
40281
	(grub_menu_execute_entry): Likewise.
40282
	(show_text_menu): Likewise.
40283
	(get_and_remove_first_entry_number): New function.
40284
	(grub_menu_execute_with_fallback): Likewise.
40285
	(get_entry): Renamed to ...
40286
	(grub_menu_get_entry): .. this and made it global.
40287
	(get_timeout): Renamed to ...
40288
	(grub_menu_get_timeout): ... this and made it global.
40289
	(set_timeout): Renamed to ...
40290
	(grub_menu_set_timeout): ... this and made it global.
40291
	(grub_normal_terminal_menu_viewer): Renamed to ...
40292
	(grub_normal_text_menu_viewer): ... this.
40293
40294
	* normal/menu_text.c: New file.  Extracted text-menu-specific code
40295
	from normal/menu.c.
40296
40297
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add `normal/menu_text.c'.
40298
	(normal_mod_SOURCES): Likewise.
40299
40300
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
40301
	(normal_mod_SOURCES): Likewise.
40302
40303
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
40304
	(normal_mod_SOURCES): Likewise.
40305
40306
	* conf/i386-pc.rmk, (grub_emu_SOURCES): Likewise.
40307
	(normal_mod_SOURCES): Likewise.
40308
40309
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
40310
	(normal_mod_SOURCES): Likewise.
40311
40312
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
40313
	(normal_mod_SOURCES): Likewise.
40314
40315
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
40316
	(normal_mod_SOURCES): Likewise.
40317
40318
2009-02-11  Robert Millan  <rmh@aybabtu.com>
40319
40320
	* util/grub.d/00_header.in: Update old reference to `font' command.
40321
40322
2009-02-10  Felix Zielcke  <fzielcke@z-51.de>
40323
40324
	* fs/fat.c (grub_fat_mount): Fix wrong comparison.
40325
40326
	Based on patch from Javier Martín.
40327
40328
2009-02-09  Felix Zielcke  <fzielcke@z-51.de>
40329
40330
	* conf/common.rmk (grub_probe_SOURCES): Move fs/ext2.c before fs/fat.c
40331
	to avoid false positives with FAT.
40332
	(grub_fstest_SOURCES): Likewise.
40333
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
40334
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
40335
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
40336
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
40337
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
40338
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
40339
40340
2009-02-09  Felix Zielcke  <fzielcke@z-51.de>
40341
40342
	* fs/fat.c (grub_fat_mount): Try to avoid false positives by checking
40343
	bpb.version_specific.fat12_or_fat16.fstype and
40344
	bpb.version_specific.fat32.fstype.
40345
40346
2009-02-08  Robert Millan  <rmh@aybabtu.com>
40347
40348
	* fs/tar.c: Replace "fs/cpio.c" with "cpio.c".
40349
40350
2009-02-08  Robert Millan  <rmh@aybabtu.com>
40351
40352
	* Makefile.in (host_os, host_cpu): New variables.
40353
	(target_os): Remove.  Update all users.
40354
40355
2009-02-08  Marco Gerards  <marco@gnu.org>
40356
40357
	* Makefile.in (enable_grub_emu_usb): New variable.
40358
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/scsi.c'.
40359
	(grub_emu_SOURCES) [grub_emu_SOURCES]: Add `disk/usbms.c',
40360
	`util/usb.c', `bus/usb/usb.c' and `commands/usbtest.c'.
40361
	(grub_emu_LDFLAGS): Add `$(LIBUSB)'.
40362
	(pkglib_MODULES): Add `usb.mod', `uhci.mod', `ohci.mod',
40363
	`usbtest.mod' and `usbms.mod'.
40364
	(usb_mod_SOURCES, usb_mod_CFLAGS, usb_mod_LDFLAGS)
40365
	(usbtest_mod_SOURCES, usbtest_mod_CFLAGS, usbtest_mod_LDFLAGS)
40366
	(uhci_mod_SOURCES, uhci_mod_CFLAGS, uhci_mod_LDFLAGS,
40367
	(ohci_mod_SOURCES, ohci_mod_CFLAGS, ohci_mod_LDFLAGS)
40368
	(usbms_mod_SOURCES, usbms_mod_CFLAGS, usbms_mod_LDFLAGS): New
40369
	variables.
40370
40371
	* disk/usbms.c: New file.
40372
40373
	* include/grub/usb.h: Likewise.
40374
40375
	* include/grub/usbtrans.h: Likewise.
40376
40377
	* include/grub/usbdesc.h: Likewise.
40378
40379
	* bus/usb/usbtrans.c: Likewise.
40380
40381
	* bus/usb/ohci.c: Likewise.
40382
40383
	* bus/usb/uhci.c: Likewise.
40384
40385
	* bus/usb/usbhub.c: Likewise.
40386
40387
	* bus/usb/usb.c: Likewise.
40388
40389
	* commands/usbtest.c: Likewise.
40390
40391
	* util/usb.c: Likewise.
40392
40393
	* include/grub/err.h (grub_err_t): Add `GRUB_ERR_IO'.
40394
40395
	* configure.ac: Test for libusb presence.
40396
40397
	* util/grub-emu.c (main) [HAVE_LIBUSB_H]: Call `grub_libusb_init'.
40398
40399
2009-02-08  Vesa Jääskeläinen  <chaac@nic.fi>
40400
40401
	* kern/mm.c: Add more comments.
40402
40403
2009-02-08  Robert Millan  <rmh@aybabtu.com>
40404
40405
	Patch from Javier Martín.
40406
	* fs/ext2.c (EXT2_DRIVER_SUPPORTED_INCOMPAT): Add
40407
	`EXT4_FEATURE_INCOMPAT_FLEX_BG'.
40408
40409
2009-02-08  Robert Millan  <rmh@aybabtu.com>
40410
40411
	* fs/cpio.c: Split tar functionality to ...
40412
	* fs/tar.c: ... here (new file).  Update all users.
40413
40414
2009-02-07  Robert Millan  <rmh@aybabtu.com>
40415
40416
	* fs/ext2.c (grub_ext2_mount): Avoid mounting filesystems with
40417
	backward-incompatible features.
40418
40419
	Based on patch from Javier Martín, with some adjustments.
40420
40421
2009-02-07  Michael Scherer  <misc@mandriva.org>
40422
40423
	* fs/hfs.c (grub_hfsplus_iterate_dir): Treat hfs+ as case insensitive.
40424
40425
2009-02-07  Robert Millan  <rmh@aybabtu.com>
40426
40427
	* conf/common.rmk (grub_probe_SOURCES, grub_fstest_SOURCES): Move
40428
	position of `disk/lvm.c' to ensure grub_init_all() always picks it
40429
	after the RAID stuff.
40430
40431
2009-02-05  Vesa Jääskeläinen  <chaac@nic.fi>
40432
40433
	Fixes problem when running vbetest command as reported by
40434
	Vladimir Serbinenko <phcoder@gmail.com>.
40435
40436
	* (grub_vbe_set_video_mode): Fixed problem with text modes.
40437
40438
2009-02-04  Felix Zielcke  <fzielcke@z-51.de>
40439
40440
	util/getroot.c (grub_util_get_grub_dev): Add support for /dev/mdNpN and
40441
	/dev/md/NpN style mdraid devices.
40442
40443
2009-02-03  Felix Zielcke  <fzielcke@z-51.de>
40444
40445
	* util/unifont2pff.rb: Remove.
40446
40447
2009-02-03  Felix Zielcke  <fzielcke@z-51.de>
40448
40449
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Add a missing trailing
40450
	`#'.
40451
40452
2009-02-03  Felix Zielcke  <fzielcke@z-51.de>
40453
40454
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `normal/menu_viewer.c'.
40455
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
40456
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
40457
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
40458
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
40459
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
40460
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
40461
40462
2009-02-02  Christian Franke  <franke@computer.org>
40463
40464
	* lib/hexdump.c (hexdump): Print at most 3 lines if data is identical.
40465
40466
2009-02-01  Felix Zielcke  <fzielcke@z-51.de>
40467
40468
	* INSTALL: Note that we now require at least autoconf 2.59 and
40469
	that LZO is optional.
40470
40471
2009-02-01  Vesa Jääskeläinen  <chaac@nic.fi>
40472
40473
	Base on patch on bug #24154 created by Tomas Tintera
40474
	<trosos@seznam.cz>.
40475
40476
	* video/i386/pc/vbe.c (grub_video_vbe_scroll): Fix downward scrolling.
40477
40478
2009-02-01  Vesa Jääskeläinen  <chaac@nic.fi>
40479
40480
	Based on patch on bug #25318 created by Bernhard Rosenkraenzer
40481
	<bero@arklinux.org>.
40482
40483
	* normal/parser.y (script_init): Add missing semicolon.
40484
40485
2009-01-31  Colin D Bennett  <colin@gibibit.com>
40486
40487
	* normal/main.c: Add include to grub/menu_viewer.h.
40488
	(free_menu_entry_classes): Added.
40489
	(grub_normal_menu_addentry): Added class property handling.
40490
	(grub_normal_execute): Changed to use new menu viewer for menu viewing.
40491
	(GRUB_MOD_INIT(normal)): Added register for text based menu viewer.
40492
40493
	* normal/menu_viewer.c: New file.
40494
40495
	* normal/menu.c (run_menu_entry): Renamed to ...
40496
	(grub_menu_execute_entry): ... this and	made it as global.
40497
	(grub_menu_run): Renamed to ...
40498
	(show_text_menu): ... this and made it local.
40499
	(show_text_menu): Adapt to new function names.
40500
	(grub_normal_terminal_menu_viewer): New global variable.
40501
40502
	* include/grub/menu.h: New file.
40503
40504
	* include/grub/menu_viewer.h: New file.
40505
40506
	* include/grub/normal.h: Added include to grub/menu.h.
40507
	(grub_menu_entry): Moved to include/grub/menu.h.
40508
	(grub_menu_entry_t): Likewise.
40509
	(grub_menu): Likewise.
40510
	(grub_menu_t): Likewise.
40511
	(grub_normal_terminal_menu_viewer): Added.
40512
	(grub_menu_execute_entry): Likewise.
40513
	(grub_menu_run): Removed.
40514
40515
	* DISTLIST: Added include/grub/menu.h.
40516
	Added include/grub/menu_viewer.h.
40517
	Added normal/menu_viewer.c.
40518
40519
2009-01-31  Vesa Jääskeläinen  <chaac@nic.fi>
40520
40521
	* normal/execute.c (grub_script_execute_menuentry): Changed to use
40522
	arglist for menutitle arguments.
40523
40524
	* normal/main.c (grub_normal_menu_addentry): Likewise.
40525
40526
	* normal/parser.y (menuentry): Likewise.
40527
40528
	* normal/script.c (grub_script_create_cmdmenu): Likewise.
40529
40530
	* include/grub/script.h (grub_script_cmd_menuentry): Likewise.
40531
	(grub_script_create_cmdmenu): Likewise.
40532
40533
	* include/grub/normal.h (grub_normal_menu_addentry): Likewise.
40534
40535
	* conf/i386-pc.rmk (normal_mod_SOURCES): Adapt Colin D Bennett's
40536
	changes.
40537
40538
	* conf/x86_64-efi.rmk (normal_mod_SOURCES): Likewise.
40539
40540
	* conf/i386-coreboot.rmk (normal_mod_SOURCES): Likewise.
40541
40542
	* conf/i386-efi.rmk (normal_mod_SOURCES): Likewise.
40543
40544
	* conf/i386-ieee1275.rmk (normal_mod_SOURCES): Likewise.
40545
40546
	* conf/powerpc-ieee1275.rmk (normal_mod_SOURCES): Likewise.
40547
40548
	* conf/sparc64-ieee1275.rmk (normal_mod_SOURCES): Likewise.
40549
40550
2009-01-30  Christian Franke  <franke@computer.org>
40551
40552
	* normal/arg.c (grub_arg_show_help): Add indentation if '\n' appears
40553
	in option help text.
40554
40555
2009-01-27  Pavel Roskin  <proski@gnu.org>
40556
40557
	* disk/fs_uuid.c (search_fs_uuid): Ignore case of the UUID.
40558
40559
2009-01-27  Vesa Jääskeläinen  <chaac@nic.fi>
40560
40561
	* commands/lsmmap.c: Add include to grub/machine/memory.h.
40562
40563
	* fs/i386/pc/pxe.c (grub_pxefs_open): Fix sign problem.
40564
40565
	* term/i386/pc/at_keyboard.c (GRUB_MOD_FINI(at_keyboard)): Use proper
40566
	unregister function.
40567
40568
2009-01-27  Vesa Jääskeläinen  <chaac@nic.fi>
40569
40570
	* disk/scsi.c (grub_scsi_read): Fix sign problem.
40571
40572
	* term/i386/pc/vga_text.c (grub_vga_text_init_fini). Fix declaration.
40573
40574
	* util/grub-mkfont.c (usage): Fix typo.
40575
40576
	* util/elf/grub-mkimage.c (load_modules): Fix warning.
40577
40578
2009-01-26  Daniel Mierswa  <impulze@impulze.org>
40579
40580
	* fs/fat.c (grub_fat_uuid): Fix shift of the first two bytes.
40581
40582
	* commands/search.c (search_fs_uuid): Ignore case of the UUID.
40583
40584
	* kern/misc.c (grub_strcasecmp): New function.
40585
	(grub_strcasecmp): Use grub_size_t instead of int for length.
40586
	Fix return value.
40587
	* include/grub/misc.h: Update function prototypes.
40588
40589
2009-01-26  Robert Millan  <rmh@aybabtu.com>
40590
40591
	* configure.ac: Fix cross-compilation check.
40592
40593
2009-01-22  Christian Franke  <franke@computer.org>
40594
40595
	* kern/misc.c (grub_vsprintf): Fix size and termination of `format2'
40596
	(precision) digit string.  Allow `.format2' without `format1' (width).
40597
	Limit input chars for `%s' output to `format2' if specified.  This is
40598
	compatible with standard printf ().
40599
40600
2009-01-22  Christian Franke  <franke@computer.org>
40601
40602
	* disk/ata.c (grub_ata_wait_status): Replace by ...
40603
	(grub_ata_wait_not_busy): ... this function.  Checks only BSY bit,
40604
	other status bits may be invalid while BSY is asserted.
40605
	(grub_ata_check_ready): New function.
40606
	(grub_ata_cmd): Removed.
40607
	(grub_ata_wait_drq): New function.
40608
	(grub_ata_strncpy): Remove inline.
40609
	(grub_ata_pio_read): Reduce to actual block transfer.  BSY wait
40610
	and error check now done by grub_ata_wait_drq ().
40611
	(grub_ata_pio_write): Likewise.
40612
	(grub_atapi_identify): Set DEV before check for !BSY.  Use
40613
	grub_ata_wait_drq () to wait for data.
40614
	(grub_ata_device_initialize): Add status register check to
40615
	detect missing SATA slave devices.  Add debug messages.
40616
	(grub_atapi_wait_drq): Use grub_ata_wait_not_busy ().
40617
	(grub_atapi_packet): Set DEV before check for !BSY.  Replace
40618
	transfer loop by grub_ata_pio_write ().
40619
	(grub_ata_identify): Set DEV before check for !BSY. Use
40620
	grub_ata_wait_drq () to wait for data.
40621
	(grub_ata_setaddress): Set DEV before check for !BSY.
40622
	(grub_ata_readwrite): Remove duplicate code, handle batch/rest and
40623
	read/write in one loop.  Fix invalid command on write.  Fix incomplete
40624
	command on (size % batch) == 0.  Add missing error check after write of
40625
	last block.  Add debug messages.
40626
	(grub_atapi_read):  Replace transfer loop by grub_ata_pio_read ().
40627
40628
2009-01-19  Christian Franke  <franke@computer.org>
40629
40630
	* disk/ata.c (GRUB_ATAPI_REG_*): New defines.
40631
	(GRUB_ATAPI_IREASON_*): Likewise.
40632
	(grub_ata_pio_write): Fix timeout error return.
40633
	(grub_atapi_identify): Add grub_ata_wait () after cmd.
40634
	(grub_atapi_wait_drq): New function.
40635
	(grub_atapi_packet): New parameter `size'.
40636
	Use grub_atapi_wait_drq () and direct write instead of
40637
	grub_ata_pio_write ().
40638
	(grub_atapi_read): Replace grub_ata_pio_read () by a loop which
40639
	reads the number of bytes requested by the device for each DRQ
40640
	assertion.
40641
	(grub_atapi_write): Remove old implementation, return not
40642
	implemented instead.
40643
40644
2009-01-19  Christian Franke  <franke@computer.org>
40645
40646
	* disk/scsi.c (grub_scsi_read10): Use scsi->blocksize instead
40647
	of 512 to calculate data size.
40648
	(grub_scsi_read12): Likewise.
40649
	(grub_scsi_write10): Likewise.
40650
	(grub_scsi_write12): Likewise.
40651
	(grub_scsi_read): Adjust size according to blocksize.
40652
	Add checks for invalid blocksize and unaligned transfer.
40653
40654
2009-01-19  Vesa Jääskeläinen  <chaac@nic.fi>
40655
40656
	* font/font.c (grub_font_loader_init): Re-position unknown glyph.
40657
40658
	* term/gfxterm.c (write_char): Fix background rendering for wide
40659
	width glyphs.
40660
40661
2009-01-19  Robert Millan  <rmh@aybabtu.com>
40662
40663
	* config.guess: Update to latest version from config git.
40664
	* config.sub: Likewise.
40665
40666
2009-01-17  Felix Zielcke  <fzielcke@z-51.de>
40667
40668
	* Makefile.in: Change font compilation to use new grub-mkfont instead
40669
	of java version.
40670
40671
	* util/fonttool/src/org/gnu/grub/fonttool/BDFLoader.java: Remove.
40672
	* util/fonttool/src/org/gnu/grub/fonttool/CharDefs.java: Likewise.
40673
	* util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
40674
	* util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
40675
	* util/fonttool/src/org/gnu/grub/fonttool/Converter.java: Likewise.
40676
	* util/fonttool/src/org/gnu/grub/fonttool/Font.java: Likewise.
40677
	* util/fonttool/src/org/gnu/grub/fonttool/Glyph.java: Likewise.
40678
	* util/fonttool/src/org/gnu/grub/fonttool/PFF2Sections.java: Likewise.
40679
	* util/fonttool/src/org/gnu/grub/fonttool/PFF2Writer.java: Likewise.
40680
40681
2009-01-16  Christian Franke  <franke@computer.org>
40682
40683
	* disk/ata.c (enum grub_ata_commands): Remove EXEC_DEV_DIAGNOSTICS.
40684
	(enum grub_ata_timeout_milliseconds): New enum.
40685
	(grub_ata_wait_status): Add parameter milliseconds.
40686
	(grub_ata_cmd): Remove variable `err'.  Remove wait for !DRQ to allow
40687
	recovery from timed-out commands.
40688
	(grub_ata_pio_read): Add parameter milliseconds.  Fix error return,
40689
	return grub_errno instead of REG_ERROR.
40690
	(grub_ata_pio_write): Add parameter milliseconds.
40691
	(grub_atapi_identify): Fix size of ATAPI IDENTIFY sector.
40692
	Pass milliseconds to grub_ata_wait_status () and
40693
	grub_ata_pio_read ().
40694
	(grub_atapi_packet): Pass milliseconds to grub_ata_pio_write ().
40695
	(grub_ata_identify): Remove variable `ataerr'.  Pass milliseconds to
40696
	grub_ata_wait_status ().  Fix IDENTIFY timeout check.
40697
	(grub_ata_device_initialize): Remove EXECUTE DEVICE DIAGNOSTICS.
40698
	It is not suitable for device detection, because DEV bit is ignored,
40699
	the command may run too long, and not all devices set the signature
40700
	properly.
40701
	(grub_ata_pciinit): Clear grub_errno before grub_ata_device_initialize ().
40702
	(grub_ata_setaddress): Pass milliseconds to grub_ata_wait_status ().
40703
	Fix device selection, DEV bit must be set first to address the registers
40704
	of the correct device.
40705
	(grub_ata_readwrite): Pass milliseconds to grub_ata_wait_status () and
40706
	grub_ata_pio_read/write ().
40707
	(grub_atapi_read): Pass milliseconds to grub_ata_pio_read ().
40708
	(grub_atapi_write): Pass milliseconds to grub_ata_pio_write ().
40709
40710
2009-01-13  Carles Pina i Estany  <carles@pina.cat>
40711
40712
	* util/grub-editenv.c (main): Use fseeko(), not fseek().
40713
40714
2009-01-13  Bean  <bean123ch@gmail.com>
40715
40716
	* util/grub-mkfont.c (write_font): forget to remove some debug code.
40717
40718
2009-01-13  Bean  <bean123ch@gmail.com>
40719
40720
	* Makefile.in: (enable_grub_mkfont): New variable.
40721
	(freetype_cflags): Likewise.
40722
	(freetype_libs): Likewise.
40723
40724
	* common.rmk (bin_UTILITIES): Add `grub-mkfont' if requested.
40725
	(grub_mkfont_SOURCES): New variable.
40726
	(grub_mkfont_CFLAGS): Likewise.
40727
	(grub_mkfont_LDFLAGS): Likewise.
40728
40729
	* configure.ac (--enable-grub-mkfont): New option. Check for freetype2
40730
	library if `--enable-grub-mkfont' is requested.
40731
	(enable_grub_mkfont): New variable.
40732
	(freetype_cflags): Likewise.
40733
	(freetype_libs): Likewise.
40734
40735
	* util/grub-mkfont.c: New file.
40736
40737
2009-01-12  Christian Franke  <franke@computer.org>
40738
40739
	* disk/ata.c (grub_ata_pciinit): Fix bit numbers of compatibility
40740
	mode check.  Fix setting of compat_use[].
40741
40742
2009-01-10  Robert Millan  <rmh@aybabtu.com>
40743
40744
	Update a few copyright years which we forgot to do in 2008 (only for
40745
	files whose changes made in 2008 were copyright-significant)
40746
40747
	* Makefile.in: Add 2008 to Copyright line.
40748
	* disk/ieee1275/ofdisk.c: Likewise.
40749
	* disk/efi/efidisk.c: Likewise.
40750
	* kern/dl.c: Likewise.
40751
	* kern/sparc64/ieee1275/init.c: Likewise.
40752
	* kern/mm.c: Likewise.
40753
	* kern/efi/mm.c: Likewise.
40754
	* boot/i386/pc/boot.S: Likewise.
40755
	* genfslist.sh: Likewise.
40756
	* fs/iso9660.c: Likewise.
40757
	* fs/hfs.c: Likewise.
40758
	* fs/jfs.c: Likewise.
40759
	* fs/minix.c: Likewise.
40760
	* fs/ufs.c: Likewise.
40761
	* gensymlist.sh.in: Likewise.
40762
	* genkernsyms.sh.in: Likewise.
40763
	* include/grub/misc.h: Likewise.
40764
	* include/grub/types.h: Likewise.
40765
	* include/grub/symbol.h: Likewise.
40766
	* include/grub/elf.h: Likewise.
40767
	* include/grub/kernel.h: Likewise.
40768
	* include/grub/disk.h: Likewise.
40769
	* include/grub/dl.h: Likewise.
40770
	* include/grub/i386/linux.h: Likewise.
40771
	* include/grub/i386/pc/biosdisk.h: Likewise.
40772
	* include/grub/efi/api.h: Likewise.
40773
	* include/grub/efi/pe32.h: Likewise.
40774
	* include/grub/util/misc.h: Likewise.
40775
	* normal/execute.c: Likewise.
40776
	* normal/arg.c: Likewise.
40777
	* normal/completion.c: Likewise.
40778
	* normal/lexer.c: Likewise.
40779
	* normal/parser.y: Likewise.
40780
	* normal/misc.c: Likewise.
40781
	* commands/i386/pc/vbeinfo.c: Likewise.
40782
	* commands/hexdump.c: Likewise.
40783
	* commands/terminal.c: Likewise.
40784
	* commands/ls.c: Likewise.
40785
	* commands/help.c: Likewise.
40786
	* partmap/pc.c: Likewise.
40787
	* loader/efi/chainloader.c: Likewise.
40788
	* loader/multiboot_loader.c: Likewise.
40789
	* loader/i386/pc/multiboot2.c: Likewise.
40790
	* term/efi/console.c: Likewise.
40791
	* term/i386/pc/serial.c: Likewise.
40792
	* util/lvm.c: Likewise.
40793
	* util/console.c: Likewise.
40794
	* util/i386/efi/grub-mkimage.c: Likewise.
40795
	* util/raid.c: Likewise.
40796
40797
2009-01-06  Vesa Jääskeläinen  <chaac@nic.fi>
40798
40799
	* commands/videotest.c: Removed include to grub/machine/memory.h.
40800
40801
	* conf/i386-pc.rmk (pkglib_MODULES): Removed video.mod, gfxterm.mod,
40802
	videotest.mod, bitmap.mod, tga.mod, jpeg.mod, png.mod.
40803
	(video_mod_SOURCES): Removed.
40804
	(video_mod_CFLAGS): Likewise.
40805
	(video_mod_LDFLAGS): Likewise.
40806
	(gfxterm_mod_SOURCES): Likewise.
40807
	(gfxterm_mod_CFLAGS): Likewise.
40808
	(gfxterm_mod_LDFLAGS): Likewise.
40809
	(videotest_mod_SOURCES): Likewise.
40810
	(videotest_mod_CFLAGS): Likewise.
40811
	(videotest_mod_LDFLAGS): Likewise.
40812
	(bitmap_mod_SOURCES): Likewise.
40813
	(bitmap_mod_CFLAGS): Likewise.
40814
	(bitmap_mod_LDFLAGS): Likewise.
40815
	(tga_mod_SOURCES): Likewise.
40816
	(tga_mod_CFLAGS): Likewise.
40817
	(tga_mod_LDFLAGS): Likewise.
40818
	(jpeg_mod_SOURCES): Likewise.
40819
	(jpeg_mod_CFLAGS): Likewise.
40820
	(jpeg_mod_LDFLAGS): Likewise.
40821
	(png_mod_SOURCES): Likewise.
40822
	(png_mod_CFLAGS): Likewise.
40823
	(png_mod_LDFLAGS): Likewise.
40824
40825
	* conf/common.rmk (pkglib_MODULES): Added video.mod, videotest.mod,
40826
	bitmap.mod, tga.mod, jpeg.mod, png.mod, font.mod, gfxterm.mod
40827
	(video_mod_SOURCES): Added.
40828
	(video_mod_CFLAGS): Likewise.
40829
	(video_mod_LDFLAGS): Likewise.
40830
	(videotest_mod_SOURCES): Likewise.
40831
	(videotest_mod_CFLAGS): Likewise.
40832
	(videotest_mod_LDFLAGS): Likewise.
40833
	(bitmap_mod_SOURCES): Likewise.
40834
	(bitmap_mod_CFLAGS): Likewise.
40835
	(bitmap_mod_LDFLAGS): Likewise.
40836
	(tga_mod_SOURCES): Likewise.
40837
	(tga_mod_CFLAGS): Likewise.
40838
	(tga_mod_LDFLAGS): Likewise.
40839
	(jpeg_mod_SOURCES): Likewise.
40840
	(jpeg_mod_CFLAGS): Likewise.
40841
	(jpeg_mod_LDFLAGS): Likewise.
40842
	(png_mod_SOURCES): Likewise.
40843
	(png_mod_CFLAGS): Likewise.
40844
	(png_mod_LDFLAGS): Likewise.
40845
	(gfxterm_mod_SOURCES): Likewise.
40846
	(gfxterm_mod_CFLAGS): Likewise.
40847
	(gfxterm_mod_LDFLAGS): Likewise.
40848
40849
	* term/gfxterm.c: Removed include to grub/machine/memory.h,
40850
	grub/machine/console.h.
40851
40852
2009-01-04  Jerone Young  <jerone@gmail.com>
40853
40854
	Make on screen instructions clearer
40855
40856
	Based on patch created by Jidanni <jidanni@jidanni.org>
40857
40858
	* normal/menu.c: print clearer instructions on the screen
40859
40860
2009-01-02  Colin D Bennett  <colin@gibibit.com>
40861
40862
	New font engine.
40863
40864
	Additional changes by Vesa Jääskeläinen <chaac@nic.fi> to adapt to
40865
	build system and fixed gfxterm.c to work with different	sized fonts.
40866
40867
	* configure.ac: Changed UNIFONT_HEX to UNIFONT_BDF.
40868
40869
	* configure: Re-generated.
40870
40871
	* DISTLIST: Removed font/manager.c.
40872
	Added font/font.c.
40873
	Added font/font_cmd.c.
40874
40875
	* Makefile.in: Changed UNIFONT_HEX to UNIFONT_BDF.  Added Font tool
40876
	compilation.
40877
40878
	* include/grub/misc.h (grub_utf8_to_ucs4): Changed prototype.  Changed users.
40879
40880
	* kern/misc.c (grub_utf8_to_ucs4): Changed prototype.
40881
40882
	* kern/term.c: Changed users of grub_utf8_to_ucs4.
40883
40884
	* normal/menu.c: Likewise.
40885
40886
	* conf/common.rmk (font_mod_SOURCES): Removed font/manager.c.
40887
	(font_mod_SOURCES): Added font/font_cmd.c, font/font.c.
40888
40889
	* include/grub/font.h: Replaced with new file.
40890
40891
	* include/grub/video.h (GRUB_VIDEO_MODE_TYPE_ALPHA): Changed value.
40892
	(GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED): Likewise.
40893
	(GRUB_VIDEO_MODE_TYPE_COLOR_MASK): Likewise.
40894
	(GRUB_VIDEO_MODE_TYPE_1BIT_BITMAP): Added.
40895
	(grub_video_blit_format): Added GRUB_VIDEO_BLIT_FORMAT_1BIT_PACKED.
40896
	(grub_video_mode_info): Added bg_red, bg_green, bg_blue, bg_alpha,
40897
	fg_red, fg_green, fg_blue, fg_alpha.
40898
	(grub_video_adapter): Removed blit_glyph.
40899
	(grub_video_blit_glyph): Removed.
40900
40901
	* font/manager.c: Removed file.
40902
40903
	* font/font.c: New file.
40904
40905
	* font/font_cmd.c: Likewise.
40906
40907
	* video/video.c (grub_video_blit_glyph): Removed.
40908
40909
	* video/i386/pc/vbe.c (grub_video_vbe_map_rgb): Added 1-bit support.
40910
	(grub_video_vbe_map_rgba): Likewise.
40911
	(grub_video_vbe_unmap_color_int): Likewise.
40912
	(grub_video_vbe_blit_glyph): Removed.
40913
	(grub_video_vbe_adapter): Removed blit_glyph.
40914
40915
	* video/i386/pc/vbeutil.c (get_data_ptr): Added 1-bit support.
40916
	(get_pixel): Likewise.
40917
	(set_pixel): Likewise.
40918
40919
	* commands/videotest.c (grub_cmd_videotest): Added more tests for fonts.
40920
40921
	* term/gfxterm.c: Adapted to new font engine.
40922
40923
	* term/i386/pc/vesafb.c: Marked as deprecated.  Made it compile.
40924
40925
	* term/i386/pc/vga.c: Likewise.
40926
40927
	* util/fonttool/src/org/gnu/grub/fonttool/BDFLoader.java: New file.
40928
40929
	* util/fonttool/src/org/gnu/grub/fonttool/CharDefs.java: Likewise.
40930
40931
	* util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
40932
40933
	* util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
40934
40935
	* util/fonttool/src/org/gnu/grub/fonttool/Converter.java: Likewise.
40936
40937
	* util/fonttool/src/org/gnu/grub/fonttool/Font.java: Likewise.
40938
40939
	* util/fonttool/src/org/gnu/grub/fonttool/Glyph.java: Likewise.
40940
40941
	* util/fonttool/src/org/gnu/grub/fonttool/PFF2Sections.java: Likewise.
40942
40943
	* util/fonttool/src/org/gnu/grub/fonttool/PFF2Writer.java: Likewise.
40944
40945
	* util/grub.d/00_header.in: Changed to use new loadfont command.
40946
40947
	* util/grub-mkconfig_lib.in: Changed font extension.
40948
40949
2008-12-28  Felix Zielcke  <fzielcke@z-51.de>
40950
40951
	* util/getroot.c (grub_util_get_grub_dev): Add support for
40952
	/dev/md/dNNpNN style partitionable mdraid devices.
40953
40954
2008-12-12  Alex Smith  <alex@alex-smith.me.uk>
40955
40956
	* fs/i386/pc/pxe.c (grub_pxefs_open): Handle the one open connection
40957
	at a time limit of the PXE TFTP API correctly.
40958
	(grub_pxefs_close): Likewise.
40959
40960
2008-11-29  Robert Millan  <rmh@aybabtu.com>
40961
40962
	* disk/ata.c (grub_ata_pciinit): Handle errors raised by
40963
	grub_ata_device_initialize() calls.
40964
40965
2008-11-28  Krzysztof Smiechowicz  <deadwood@wp.pl>
40966
40967
	* fs/affs.c (grub_affs_iterate_dir): Return failure when directory
40968
	iteration failed.
40969
	* fs/sfs.c (grub_sfs_iterate_dir): Likewise.
40970
40971
2008-11-28  Robert Millan  <rmh@aybabtu.com>
40972
40973
	Fix build on powerpc-ieee1275.  Based on patch created by
40974
	Manoel Abranches <mrabran@linux.vnet.ibm.com>.
40975
	* conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add
40976
	`kern/ieee1275/mmap.c'.
40977
	* include/grub/powerpc/ieee1275/memory.h: New file.
40978
40979
	Provide grub-install on coreboot.
40980
	* conf/i386-coreboot.rmk (sbin_SCRIPTS): Add `grub-install'.
40981
	(grub_install_SOURCES): New variable.
40982
	* util/i386/pc/grub-install.in: Add a few condition checks to make it
40983
	usable on coreboot.
40984
40985
2008-11-25  Felix Zielcke  <fzielcke@z-51.de>
40986
40987
	* util/grub-fstest.c (grub_term_get_current_input): Change return type
40988
	to `grub_term_input_t'.
40989
	(grub_term_get_current_output): Change return type to
40990
	`grub_term_output_t'.
40991
40992
2008-11-22  Robert Millan  <rmh@aybabtu.com>
40993
40994
	Fix breakage on coreboot due to declaration mismatch.
40995
	* term/i386/pc/vga_text.c (grub_vga_text_init_fini): New function.
40996
	(grub_vga_text_term): Use grub_vga_text_init_fini() instead of
40997
	grub_vga_text_cls().
40998
40999
	* kern/i386/loader.S (grub_multiboot_backward_relocator): Improve
41000
	comments.  Avoid copying one more byte than necessary (just in case).
41001
41002
	* conf/powerpc-ieee1275.rmk (kernel_elf_LDFLAGS): Change link address
41003
	to 0x200000 (avoids trouble with some OFW implementations, and matches
41004
	with the one in Yaboot).
41005
	Reported by Manoel Abranches
41006
41007
2008-11-20  Robert Millan  <rmh@aybabtu.com>
41008
41009
	* kern/i386/coreboot/init.c (grub_time_tics): Remove variable.
41010
	(grub_get_rtc, grub_exit): Abort with grub_fatal() if called.
41011
41012
	* util/grub-mkconfig_lib.in (grub_warn): New function.
41013
	(convert_system_path_to_grub_path): Use grub_warn() when issuing
41014
	warnings, to obtain consistent formatting.
41015
	* util/grub.d/00_header.in: Likewise.
41016
	* util/update-grub_lib.in: Likewise.
41017
41018
	* loader/i386/linux.c (allocate_pages): Fix a warning.
41019
	Move comment text to `#error' stanza.
41020
41021
	Harmonize ieee1275's grub_available_iterate() with the generic
41022
	grub_machine_mmap_iterate() interface (fixes a recently-introduced
41023
	build problem on i386-ieee1275):
41024
	* kern/ieee1275/openfw.c (grub_available_iterate): Moved from here ...
41025
	* kern/ieee1275/mmap.c (grub_machine_mmap_iterate): ... here.  Add third
41026
	parameter `type'.  Update all users of this function.
41027
	* conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add
41028
	`kern/ieee1275/mmap.c'.
41029
	* kern/ieee1275/init.c
41030
	* include/grub/ieee1275/ieee1275.h (grub_available_iterate): Replace
41031
	with ...
41032
	(grub_machine_mmap_iterate): ... this.
41033
	* include/grub/i386/pc/memory.h (grub_machine_mmap_iterate): Change
41034
	return type to `grub_err_t'.  Update all implementations of this
41035
	function prototype.
41036
	* include/grub/i386/coreboot/memory.h (grub_machine_mmap_iterate):
41037
	Likewise.
41038
41039
	Add `lsmmap' command (lists firmware-provided memory map):
41040
	* commands/lsmmap.c: New file.
41041
	* conf/i386-pc.rmk (pkglib_MODULES): Add `lsmmap.mod'.
41042
	(lsmmap_mod_SOURCES, lsmmap_mod_CFLAGS, lsmmap_mod_LDFLAGS): New
41043
	variables.
41044
	* conf/powerpc-ieee1275.rmk: Likewise.
41045
	* conf/i386-coreboot.rmk: Likewise.
41046
	* conf/i386-ieee1275.rmk: Likewise.
41047
41048
2008-11-19  Robert Millan  <rmh@aybabtu.com>
41049
41050
	* loader/i386/pc/linux.c (grub_rescue_cmd_initrd): Fix a typo.
41051
	* loader/i386/linux.c (grub_rescue_cmd_initrd): Implement a few needed
41052
	constraints to initrd allocation (based on code from
41053
	loader/i386/pc/linux.c).  Without them, initrd was allocated too high
41054
	for Linux to find it.
41055
41056
2008-11-14  Robert Millan  <rmh@aybabtu.com>
41057
41058
	* fs/cpio.c (grub_cpio_open): Compare `name' and `fn' by hand in
41059
	order to cope with duplicate slashes.
41060
41061
2008-11-14  Robert Millan  <rmh@aybabtu.com>
41062
41063
	* include/grub/i386/coreboot/memory.h (GRUB_MEMORY_MACHINE_LOWER_SIZE):
41064
	Redefine to match with GRUB_MEMORY_MACHINE_UPPER_START (0x100000).  We
41065
	don't want to mess with lower memory, because it is used in the Linux
41066
	loader.
41067
41068
	* loader/i386/linux.c (allocate_pages): Allocate `real_mode_mem' in
41069
	an appropriate place in lower memory, between 0x10000 and 0x90000,
41070
	like loader/i386/efi/linux.c does.  Linux often panics if real_mode_mem
41071
	is in our heap (probably as a result of it being corrupted during
41072
	decompression).  Add #error instance with comment to explain why this
41073
	loader isn't currently usable on PC/BIOS.
41074
41075
2008-11-14  Robert Millan  <rmh@aybabtu.com>
41076
41077
	* term/i386/pc/serial.c [! GRUB_MACHINE_PCBIOS]
41078
	(GRUB_SERIAL_PORT_NUM): Fix miscalculation.
41079
41080
2008-11-12  Robert Millan  <rmh@aybabtu.com>
41081
41082
	Make loader/i386/linux.c buildable on i386-pc (although disabled).
41083
41084
	* include/grub/i386/pc/init.h: Include `<grub/machine/memory.h>'.
41085
	(struct grub_machine_mmap_entry, grub_machine_mmap_iterate): Move
41086
	from here ...
41087
	* include/grub/i386/pc/memory.h: ... to here.
41088
41089
2008-11-12  Robert Millan  <rmh@aybabtu.com>
41090
41091
	Fix build problems on i386-ieee1275 and *-efi (introduced by vga_text
41092
	split).
41093
41094
	* include/grub/i386/pc/console.h: Include `<grub/i386/vga_common.h>'.
41095
	(grub_console_cur_color, grub_console_real_putchar)
41096
	(grub_console_putchar, grub_console_getcharwidth, grub_console_getwh)
41097
	(grub_console_setcolorstate, grub_console_setcolor)
41098
	(grub_console_getcolor): Move from here ...
41099
	* include/grub/i386/vga_common.h: ... to here (new file).
41100
41101
	* term/i386/pc/vga_text.c: Replace `<grub/machine/console.h>' with
41102
	`<grub/i386/vga_common.h>' and `<grub/cpu/io.h>' with
41103
	`<grub/i386/io.h>'.
41104
	* term/i386/vga_common.c: Replace `<grub/machine/console.h>' with
41105
	`<grub/i386/vga_common.h>'.
41106
41107
2008-11-12  Robert Millan  <rmh@aybabtu.com>
41108
41109
	* conf/i386-pc.rmk (kernel_img_SOURCES): Add `term/i386/vga_common.c'.
41110
	* conf/i386.rmk (pkglib_MODULES): Add `vga_text.mod'.
41111
	(vga_text_mod_SOURCES, vga_text_mod_CFLAGS, vga_text_mod_LDFLAGS): New
41112
	variables.
41113
	* conf/i386-coreboot.rmk (kernel_elf_SOURCES): Replace
41114
	`term/i386/pc/console.c' with `term/i386/vga_common.c'.
41115
41116
	* kern/i386/coreboot/init.c (grub_machine_init): Replace call to
41117
	grub_console_init() with call to grub_vga_text_init().
41118
	(grub_machine_fini): Replace call to
41119
	grub_console_fini() with call to grub_vga_text_fini() and
41120
	grub_at_keyboard_fini().
41121
41122
	* include/grub/i386/pc/console.h: Include `<grub/term.h>'.
41123
	(grub_console_putchar, grub_console_getcharwidth, grub_console_getwh)
41124
	(grub_console_setcolorstate, grub_console_setcolor)
41125
	(grub_console_getcolor): New function prototypes.
41126
41127
	* term/i386/pc/vga_text.c: Include `<grub/dl.h>'.
41128
	(grub_vga_text_getxy, grub_vga_text_gotoxy, grub_vga_text_cls)
41129
	(grub_vga_text_setcursor): Static-ize.
41130
	(grub_vga_text_term): New structure.
41131
	(GRUB_MOD_INIT(vga_text), GRUB_MOD_FINI(vga_text)): New functions.
41132
41133
	* term/i386/pc/console.c: Remove `<grub/machine/machine.h>'.
41134
	(grub_console_cur_color, grub_console_standard_color)
41135
	(grub_console_normal_color, grub_console_highlight_color)
41136
	(map_char, grub_console_putchar, grub_console_getcharwidth)
41137
	(grub_console_getwh, grub_console_setcolorstate, grub_console_setcolor)
41138
	(grub_console_getcolor): Move from here ...
41139
	* term/i386/vga_common.c: ... to here (same function names).
41140
41141
2008-11-12  Robert Millan  <rmh@aybabtu.com>
41142
41143
	Use newly-added Multiboot support in coreboot.
41144
41145
	* conf/i386-coreboot.rmk (kernel_elf_SOURCES): Replace
41146
	`kern/i386/coreboot/mmap.c' with `kern/i386/multiboot_mmap.c'.
41147
41148
	* kern/i386/coreboot/startup.S: Enable Multiboot header, fix its
41149
	alignment, set `MULTIBOOT_MEMORY_INFO' flag.
41150
	(codestart): Store the MBI in `startup_multiboot_info' when we're
41151
	being loaded using Multiboot.
41152
41153
	* kern/i386/coreboot/init.c (grub_machine_init): Move
41154
	grub_at_keyboard_init() call to beginning of function (useful for
41155
	debugging).  Call grub_machine_mmap_init() before attempting to use
41156
	grub_machine_mmap_iterate().
41157
	(grub_lower_mem, grub_upper_mem): Move from here ...
41158
	* kern/i386/multiboot_mmap.c (grub_lower_mem, grub_upper_mem): ... to
41159
	here (new file).
41160
41161
	* include/grub/i386/coreboot/memory.h (grub_machine_mmap_init): New
41162
	function prototype.
41163
41164
2008-11-12  Robert Millan  <rmh@aybabtu.com>
41165
41166
	Fix a regression introduced by the at_keyboard.mod split.  Because
41167
	some terminals are default on some platforms and non-default on
41168
	others, the first terminal being registered determines which is
41169
	going to be default.
41170
41171
	* kern/term.c (grub_term_register_input): If this is the first
41172
	terminal being registered, set it as the current one.
41173
	(grub_term_register_output): Likewise.
41174
41175
	* term/efi/console.c (grub_console_init): Do not call
41176
	grub_term_set_current_output() or grub_term_set_current_input().
41177
	* term/ieee1275/ofconsole.c (grub_console_init): Likewise.
41178
	* term/i386/pc/console.c (grub_console_init): Likewise.
41179
	(grub_console_fini): Do not call grub_term_set_current_input()
41180
	(but leave grub_term_set_current_output() to restore text mode).
41181
41182
2008-11-10  Robert Millan  <rmh@aybabtu.com>
41183
41184
	* util/grub.d/00_header.in: Add backward compatibility check for
41185
	versions of terminal.mod that don't understand `terminal_input' or
41186
	`terminal_output'.
41187
41188
2008-11-09  Robert Millan  <rmh@aybabtu.com>
41189
41190
	* commands/terminal.c (GRUB_MOD_FINI(terminal)): Unregister
41191
	`terminal_input' / `terminal_output', not `terminal'.
41192
41193
2008-11-08  Robert Millan  <rmh@aybabtu.com>
41194
41195
	* Makefile.in (include_DATA): Fix srcdir=. assumption.
41196
	(DISTCLEANFILES): Add `build_env.mk'.
41197
41198
2008-11-08  Robert Millan  <rmh@aybabtu.com>
41199
41200
	* term/i386/pc/vesafb.c (grub_vesafb_term): Change type to
41201
	`struct grub_term_output'.  Remove `.checkkey' and `.getkey'
41202
	members.  Update all users.
41203
	* util/console.c (grub_ncurses_term): Split in ...
41204
	(grub_ncurses_term_input): ... this, and ...
41205
	(grub_ncurses_term_output): ... this.  Update all users.
41206
	* term/ieee1275/ofconsole.c: Remove stale `#endif'.
41207
41208
2008-11-08  Robert Millan  <rmh@aybabtu.com>
41209
41210
	* Makefile.in (PKGLIB): Add $(pkglib_BUILDDIR).
41211
	(PKGDATA): Add $(pkgdata_SRCDIR).
41212
	(pkglib_BUILDDIR): New variable.
41213
	(pkgdata_SRCDIR): New variable.
41214
	(build_env.mk): New target.
41215
	(include_DATA): New variable.
41216
	(install-local): Install $(include_DATA) files in $(includedir).
41217
41218
2008-11-07  Pavel Roskin  <proski@gnu.org>
41219
41220
	* gendistlist.sh: Use C locale for sorting to ensure consistent
41221
	output on all systems.
41222
41223
	* util/grub.d/00_header.in: Remove incorrect space before
41224
	"serial".
41225
41226
2008-11-07  Robert Millan  <rmh@aybabtu.com>
41227
41228
	* include/multiboot2.h (struct multiboot_header): Add `flags' member as
41229
	per specification.
41230
	* loader/multiboot2.c (grub_multiboot2): Fix Multiboot2 header check.
41231
	* loader/multiboot_loader.c (find_multi_boot2_header): New function
41232
	(based on find_multi_boot1_header).
41233
	(grub_rescue_cmd_multiboot_loader): Check for Multiboot2 header,
41234
	using find_multi_boot2_header(), and abort if neither Multiboot or
41235
	Multiboot headers were found.
41236
41237
2008-11-07  Robert Millan  <rmh@aybabtu.com>
41238
41239
	Modularize at_keyboard.mod:
41240
41241
	* conf/i386.rmk (pkglib_MODULES): Add `at_keyboard.mod'.
41242
	(at_keyboard_mod_SOURCES, at_keyboard_mod_CFLAGS)
41243
	(at_keyboard_mod_LDFLAGS): New variables.
41244
41245
	Actual terminal split:
41246
41247
	* include/grub/term.h (struct grub_term): Split in ...
41248
	(struct grub_term_input): ... this, and ...
41249
	(struct grub_term_output): ... this.  Update all users.
41250
	(grub_term_set_current): Split in ...
41251
	(grub_term_set_current_input): ... this, and ...
41252
	(grub_term_set_current_output): ... this.
41253
	(grub_term_get_current): Split in ...
41254
	(grub_term_get_current_input): ... this, and ...
41255
	(grub_term_get_current_output): ... this.
41256
	(grub_term_register): Split in ...
41257
	(grub_term_register_input): ... this, and ...
41258
	(grub_term_register_output): ... this.
41259
	(grub_term_unregister): Split in ...
41260
	(grub_term_unregister_input): ... this, and ...
41261
	(grub_term_unregister_output): ... this.
41262
	(grub_term_iterate): Split in ...
41263
	(grub_term_iterate_input): ... this, and ...
41264
	(grub_term_iterate_output): ... this.
41265
41266
	* kern/term.c (grub_term_list): Split in ...
41267
	(grub_term_list_input): ... this, and ...
41268
	(grub_term_list_output): ... this.  Update all users.
41269
	(grub_cur_term): Split in ...
41270
	(grub_cur_term_input): ... this, and ...
41271
	(grub_cur_term_output): ... this.  Update all users.
41272
	(grub_term_set_current): Split in ...
41273
	(grub_term_set_current_input): ... this, and ...
41274
	(grub_term_set_current_output): ... this.
41275
	(grub_term_get_current): Split in ...
41276
	(grub_term_get_current_input): ... this, and ...
41277
	(grub_term_get_current_output): ... this.
41278
	(grub_term_register): Split in ...
41279
	(grub_term_register_input): ... this, and ...
41280
	(grub_term_register_output): ... this.
41281
	(grub_term_unregister): Split in ...
41282
	(grub_term_unregister_input): ... this, and ...
41283
	(grub_term_unregister_output): ... this.
41284
	(grub_term_iterate): Split in ...
41285
	(grub_term_iterate_input): ... this, and ...
41286
	(grub_term_iterate_output): ... this.
41287
41288
	* kern/misc.c (grub_abort): Split use of grub_term_get_current() into
41289
	a check for input and one for output (and only attempt to get keys
41290
	from user when input works).
41291
41292
	* util/grub-probe.c (grub_term_get_current): Split in ...
41293
	(grub_term_get_current_input): ... this, and ...
41294
	(grub_term_get_current_output): ... this.
41295
	* util/grub-fstest.c: Likewise.
41296
	* util/i386/pc/grub-setup.c: Likewise.
41297
	* util/grub-editenv.c: Likewise.
41298
41299
	Portability adjustments:
41300
41301
	* conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Remove
41302
	`term/i386/pc/at_keyboard.c'.
41303
	* kern/ieee1275/init.c [__i386__] (grub_machine_init): Remove call to
41304
	grub_keyboard_controller_init() (now handled by terminal .init).
41305
	* kern/i386/coreboot/init.c (grub_machine_init): Add call to
41306
	grub_at_keyboard_init().
41307
	* include/grub/i386/ieee1275/console.h (grub_keyboard_controller_init)
41308
	(grub_console_checkkey, grub_console_getkey): Remove (now provided by
41309
	at_keyboard.mod via input terminal interface).
41310
	* include/grub/i386/coreboot/console.h: Convert into a stub for
41311
	`<grub/i386/pc/console.h>'.
41312
41313
	Migrate full terminals to new API:
41314
41315
	* term/efi/console.c (grub_console_term): Split into ...
41316
	(grub_console_term_input): ... this, and ...
41317
	(grub_console_term_output): ... this.  Update all users.
41318
	* term/ieee1275/ofconsole.c: Remove __i386__ hack.
41319
	(grub_ofconsole_init): Split into ...
41320
	(grub_ofconsole_init_input): ... this, and ...
41321
	(grub_ofconsole_init_output): ... this.
41322
	(grub_ofconsole_term): Split into ...
41323
	(grub_ofconsole_term_input): ... this, and ...
41324
	(grub_ofconsole_term_output): ... this.  Update all users.
41325
	* term/i386/pc/serial.c (grub_serial_term): Split into ...
41326
	(grub_serial_term_input): ... this, and ...
41327
	(grub_serial_term_output): ... this.  Update all users.
41328
	* term/i386/pc/console.c (grub_console_term): Split into ...
41329
	(grub_console_term_input): ... this, and ...
41330
	(grub_console_term_output): ... this.  Update all users.
41331
	(grub_console_term_input): Only enable it on PC/BIOS platform.
41332
	(grub_console_init): Remove grub_keyboard_controller_init() call.
41333
41334
	Migrate input terminals to new API:
41335
41336
	* term/i386/pc/at_keyboard.c: Replace `cpu' and `machine' with
41337
	`i386' and `i386/pc' to enable build on x86_64 (this driver is
41338
	i386-specific anyway).
41339
	(grub_console_checkkey): Rename to ...
41340
	(grub_at_keyboard_checkkey): ... this.  Static-ize.  Update all
41341
	users.
41342
	(grub_keyboard_controller_orig): New variable.
41343
	(grub_console_getkey): Rename to ...
41344
	(grub_at_keyboard_getkey): ... this.  Static-ize.  Update all
41345
	users.
41346
	(grub_keyboard_controller_init): Static-ize.  Save original
41347
	controller value so that it can be restored ...
41348
	(grub_keyboard_controller_fini): ... here (new function).
41349
	(grub_at_keyboard_term): New structure.
41350
	(GRUB_MOD_INIT(at_keyboard), GRUB_MOD_FINI(at_keyboard)): New
41351
	functions.
41352
41353
	Migrate output terminals to new API:
41354
41355
	* term/i386/pc/vga.c (grub_vga_term): Change type to
41356
	`struct  grub_term_output'.  Remove `.checkkey' and `.getkey'
41357
	members.  Update all users.
41358
	* term/gfxterm.c (grub_video_term): Change type to
41359
	`struct  grub_term_output'.  Remove `.checkkey' and `.getkey'
41360
	members.  Update all users.
41361
	* include/grub/i386/pc/console.h (grub_console_checkkey)
41362
	(grub_console_getkey): Do not export (no longer needed by gfxterm,
41363
	etc).
41364
41365
	Migrate `terminal' command and userland tools to new API:
41366
41367
	* commands/terminal.c (grub_cmd_terminal): Split into ...
41368
	(grub_cmd_terminal_input): ... this, and ...
41369
	(grub_cmd_terminal_output): ... this.
41370
	(GRUB_MOD_INIT(terminal)): Split `terminal' command in two commands:
41371
	`terminal_input' and `terminal_output'.
41372
	* util/grub.d/00_header.in: Adjust `terminal' calls to new
41373
	`terminal_input' / `terminal_output' API.
41374
	* util/grub-mkconfig.in: Export ${GRUB_TERMINAL_INPUT} and
41375
	${GRUB_TERMINAL_OUTPUT} instead of ${GRUB_TERMINAL} (and if user
41376
	provided ${GRUB_TERMINAL}, convert it).
41377
41378
2008-11-04  Robert Millan  <rmh@aybabtu.com>
41379
41380
	* util/grub.d/10_freebsd.in: New file.  Generate grub configuration
41381
	for FreeBSD.
41382
	* conf/common.rmk (grub-mkconfig_SCRIPTS): Add 10_freebsd.
41383
41384
2008-11-03  Bean  <bean123ch@gmail.com>
41385
41386
	* kern/elf.c (grub_elf32_load): Revert to previous code.
41387
	(grub_elf64_load): Likewise.
41388
41389
	* loader/i386/bsd.c (grub_bsd_elf32_hook): Change return address.
41390
41391
2008-11-01  Robert Millan  <rmh@aybabtu.com>
41392
41393
	* Makefile.in (CPPFLAGS): Fix builddir=. assumption.
41394
	(TARGET_CPPFLAGS): Likewise.
41395
	* genmk.rb (mod_src): Fix builddir=. and srcdir=. assumptions.
41396
41397
2008-11-01  Carles Pina i Estany  <carles@pina.cat>
41398
41399
	* normal/menu.c (run_menu): Add Previous and Next Page keys in menu.
41400
41401
2008-10-29  Guillem Jover  <guillem.jover@nokia.com>
41402
41403
	* disk/lvm.c (grub_lvm_scan_device): Fix error recovery by delaying the
41404
	addition of objects until the code is not going to be able to fail.
41405
41406
2008-10-29  Guillem Jover  <guillem.jover@nokia.com>
41407
41408
	* disk/lvm.c (grub_lvm_scan_device): Fix possible NULL value handling
41409
	(add a missing NULL check, and correct them by moving the pointer
41410
	operations after the actual check).
41411
41412
2008-10-29  Robert Millan  <rmh@aybabtu.com>
41413
41414
	* util/i386/pc/grub-install.in: Handle empty string as output from
41415
	make_system_path_relative_to_its_root().
41416
41417
2008-10-05  Hans Lambermont  <hans@lambermont.dyndns.org>
41418
41419
	* disk/lvm.c (grub_lvm_scan_device): Allocate buffer space for the
41420
	circular metadata worst case scenario. If the metadata is circular
41421
	then copy the wrap in place.
41422
	* include/grub/lvm.h: Add GRUB_LVM_MDA_HEADER_SIZE, from the LVM2
41423
	project lib/format_text/layout.h
41424
	Circular metadata bug found and patch debugged by Jan Derk Gerlings.
41425
41426
2008-10-03  Felix Zielcke  <fzielcke@z-51.de>
41427
41428
	* util/i386/pc/grub-install.in: Source grub-mkconfig_lib instead of update-grub_lib.
41429
41430
2008-10-03  Felix Zielcke  <fzielcke@z-51.de>
41431
41432
	* util/update-grub_lib.in: Mention filename in warning message.
41433
41434
2008-09-29  Felix Zielcke  <fzielcke@z-51.de>
41435
41436
	* NEWS: Update for rename of update-grub to grub-mkconfig.
41437
41438
2008-09-29  Felix Zielcke  <fzielcke@z-51.de>
41439
41440
	* util/update-grub_lib.in: Copy to ...
41441
	* util/grub-mkconfig_lib.in: ... this.  Update all users.
41442
	* util/update-grub_lib.in: Make it a stub to `grub-mkconfig_lib.in'.
41443
	* util/update-grub.in: Rename to ...
41444
	* util/grub-mkconfig.in: ... this.  Update all users.  Remove `-y'
41445
	option. Add `--output' option to allow users to specify the generated
41446
	configuration file.  Default to stdout.
41447
	(update_grub_dir): Rename to ...
41448
	(grub_mkconfig_dir): ... this.
41449
	(grub_cfg): Default to an empty string.
41450
	* conf/common.rmk (update-grub): Rename to ...
41451
	(grub-mkconfig): ... this.
41452
	(update-grub_lib): Copy to ...
41453
	(grub-mkconfig_lib): ... this.
41454
	(update-grub_SCRIPTS): Copy to ...
41455
	(grub-mkconfig_SCRIPTS): ... this. Update all users.
41456
	(update-grub_DATA): Rename to ...
41457
	(grub-mkconfig_DATA): ... this.
41458
41459
2008-09-28  Robert Millan  <rmh@aybabtu.com>
41460
41461
	* fs/iso9660.c (struct grub_iso9660_primary_voldesc): Rename `created'
41462
	to `modified'.  Add the real `created' field.
41463
	(grub_iso9660_uuid): Use `modified' rather than `created' for
41464
	constructing the UUID.
41465
41466
2008-09-28  Felix Zielcke  <fzielcke@z-51.de>
41467
41468
	fs/jfs.c (grub_jfs_find_file): Treat multiple slashes like one.
41469
	Based on code from Tomas Ebenlendr <ebik@ucw.cz>.
41470
41471
2008-09-28  Bean  <bean123ch@gmail.com>
41472
41473
	* fs/ntfs.c (grub_ntfs_iterate_dir): Fix a bug in the previous patch.
41474
	Thanks to Christian Franke for finding this bug.
41475
41476
2008-09-25  Robert Millan  <rmh@aybabtu.com>
41477
41478
	* util/grub-mkdevicemap.c (make_device_map): Actually replace all
41479
	instances of grub_util_get_disk_name() (see previous commit).
41480
41481
2008-09-25  Robert Millan  <rmh@aybabtu.com>
41482
41483
	* conf/i386-pc.rmk (grub_mkdevicemap_SOURCES): Remove
41484
	`util/i386/get_disk_name.c'.
41485
	* conf/i386-efi.rmk: Likewise.
41486
	* conf/x86_64-efi.rmk: Likewise.
41487
	* conf/i386-coreboot.rmk: Likewise.
41488
	* conf/i386-ieee1275.rmk: Likewise.
41489
	* conf/powerpc-ieee1275.rmk (grub_mkdevicemap_SOURCES): Remove
41490
	`util/ieee1275/get_disk_name.c'.
41491
	* include/grub/util/misc.h (grub_util_get_disk_name): Remove.
41492
	* util/ieee1275/get_disk_name.c: Remove file.
41493
	* util/i386/get_disk_name.c: Remove file.
41494
	* util/grub-mkdevicemap.c (make_device_map): Back to hardcoding
41495
	"hd%d" for device.map entries, rather than using
41496
	grub_util_get_disk_name().
41497
41498
2008-09-24  Carles Pina i Estany  <carles@pina.cat>
41499
41500
	* disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Fix `unused parameter'
41501
	warning.
41502
	* commands/i386/pc/pxecmd.c (dmraid_nvidia): Likewise.
41503
41504
2008-09-24  Carles Pina i Estany  <carles@pina.cat>
41505
41506
	* include/grub/i386/pc/console.h (GRUB_TERM_NPAGE):
41507
	Changed to 0x5100.
41508
	(GRUB_TERM_PPAGE): Changed to 0x4900.
41509
41510
2008-09-24  Robert Millan  <rmh@aybabtu.com>
41511
41512
	* include/grub/powerpc/ieee1275/console.h (GRUB_CONSOLE_KEY_*): Remove
41513
	macros (they were i386-pc specific).
41514
	* include/grub/sparc64/ieee1275/console.h: Likewise.
41515
	* include/grub/efi/console.h: Likewise.
41516
41517
2008-09-22  Bean  <bean123ch@gmail.com>
41518
41519
	* fs/ntfs.c (grub_ntfs_iterate_dir): Fix a rare case where $BITMAP is
41520
	resident and in attribute list.
41521
41522
	* include/grub/ntfs.h (BMP_LEN): Removed.
41523
41524
2008-09-22  Bean  <bean123ch@gmail.com>
41525
41526
	* disk/ata.c (grub_atapi_open): Initialize devfnd, no need to set
41527
	scsi->name and scsi->luns, as they will be set in grub_scsi_open.
41528
41529
	* disk/scsi.c (grub_scsi_open): Don't call p->close (scsi) here when
41530
	error occurs, as grub_disk_open will call grub_disk_close, which will
41531
	call p->close (scsi).
41532
41533
2008-09-21  Felix Zielcke  <fzielcke@z-51.de>
41534
41535
	* configure.ac (AC_INIT): Quote `GRUB' string and version number.
41536
	(AC_PREREQ): Bumped to 2.59.
41537
	(AC_TRY_COMPILE): Replace obsolete macro with ...
41538
	(AC_COMPILE_IFELSE): ... this.
41539
	* aclocal.m4 (AC_TRY_LINK): Replace obsolete macro with ...
41540
	(AC_LINK_IFELSE): ... this.
41541
41542
2008-09-21  Felix Zielcke  <fzielcke@z-51.de>
41543
41544
	* autogen.sh: Add a call to `gendistlist.sh'.
41545
41546
2008-09-19  Christian Franke  <franke@computer.org>
41547
41548
	* aclocal.m4 (grub_CHECK_ENABLE_EXECUTE_STACK): New function.
41549
	* configure.ac: Call grub_CHECK_ENABLE_EXECUTE_STACK.
41550
	* include/grub/misc.h [NEED_ENABLE_EXECUTE_STACK]:
41551
	Export __enable_execute_stack() to modules.
41552
	* kern/misc.c [NEED_ENABLE_EXECUTE_STACK] (__enable_execute_stack):
41553
	New function.
41554
41555
2008-09-09  Felix Zielcke  <fzielcke@z-51.de>
41556
41557
	* Makefile.in (RMKFILES): Add `i386.rmk' and `x86_64-efi.rmk'.
41558
	Sort the list.
41559
41560
2008-09-09  Felix Zielcke  <fzielcke@z-51.de>
41561
41562
	* util/hostdisk.c: Replace #include <grub/util/biosdisk.h> with
41563
	#include <grub/util/hostdisk.h>.
41564
41565
2008-09-08  Robert Millan  <rmh@aybabtu.com>
41566
41567
	* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Skip
41568
	segments when their filesz is zero (grub_file_read() interprets
41569
	zero-size as "read until EOF", which results in memory corruption).
41570
	Use `lowest_segment' rather than 0 for calculating the current
41571
	segment load address.
41572
41573
2008-09-08  Robert Millan  <rmh@aybabtu.com>
41574
41575
	* util/hostdisk.c (open_device): Replace a grub_util_info() call
41576
	with grub_dprintf("hostdisk", ...), as it was so verbose that it
41577
	clobbered useful information.
41578
41579
2008-09-08  Robert Millan  <rmh@aybabtu.com>
41580
41581
	* include/grub/util/biosdisk.h: Move to ...
41582
	* include/grub/util/hostdisk.h: ... here.  Update all users.
41583
	* util/biosdisk.c: Move to ...
41584
	* util/hostdisk.c: ... here.  Update all users.
41585
41586
2008-09-07  Robert Millan  <rmh@aybabtu.com>
41587
41588
	* loader/i386/pc/multiboot.c (mmap_addr, mmap_length): Remove
41589
	variables.
41590
	(grub_multiboot): Move `mbi' allocation upwards, so that mmap address
41591
	and length can be stored directly in the `mbi->mmap_addr' and
41592
	`mbi->mmap_length' struct fields.
41593
41594
2008-09-07  Robert Millan  <rmh@aybabtu.com>
41595
41596
	* conf/i386.rmk: New file.  Provides declaration for building
41597
	`cpuid.mod'.
41598
	* conf/i386-pc.rmk (pkglib_MODULES): Remove `cpuid.mod'.
41599
	(cpuid_mod_SOURCES, cpuid_mod_CFLAGS, cpuid_mod_LDFLAGS): Remove
41600
	variables.
41601
	Include `conf/i386.mk'.
41602
	* conf/i386-efi.rmk: Likewise.
41603
	* conf/x86_64-efi.rmk: Likewise.
41604
	* conf/i386-coreboot.rmk: Likewise.
41605
	* conf/i386-ieee1275.rmk: Likewise.
41606
41607
2008-09-07  Vesa Jääskeläinen  <chaac@nic.fi>
41608
41609
	Based on patch created by Colin D Bennett <colin@gibibit.com>.
41610
	Adds optimization support for BGR based modes.
41611
41612
	* include/grub/i386/pc/vbeblit.h (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8A8) Removed.
41613
	(grub_video_i386_vbeblit_R8G8B8X8_R8G8B8X8): Likewise.
41614
	(grub_video_i386_vbeblit_R8G8B8_R8G8B8A8): Likewise.
41615
	(grub_video_i386_vbeblit_R8G8B8_R8G8B8X8): Likewise.
41616
	(grub_video_i386_vbeblit_index_R8G8B8A8): Likewise.
41617
	(grub_video_i386_vbeblit_index_R8G8B8X8): Likewise.
41618
	(grub_video_i386_vbeblit_R8G8B8A8_R8G8B8): Likewise.
41619
	(grub_video_i386_vbeblit_R8G8B8_R8G8B8): Likewise.
41620
	(grub_video_i386_vbeblit_index_R8G8B8): Likewise.
41621
	(grub_video_i386_vbeblit_index_index): Likewise.
41622
	(grub_video_i386_vbeblit_replace_directN): Added.
41623
	(grub_video_i386_vbeblit_replace_BGRX8888_RGBX8888): Likewise.
41624
	(grub_video_i386_vbeblit_replace_BGRX8888_RGB888): Likewise.
41625
	(grub_video_i386_vbeblit_replace_BGR888_RGBX8888): Likewise.
41626
	(grub_video_i386_vbeblit_replace_BGR888_RGB888): Likewise.
41627
	(grub_video_i386_vbeblit_replace_RGBX8888_RGB888): Likewise.
41628
	(grub_video_i386_vbeblit_replace_RGB888_RGBX8888): Likewise.
41629
	(grub_video_i386_vbeblit_replace_index_RGBX8888): Likewise.
41630
	(grub_video_i386_vbeblit_replace_index_RGB888): Likewise.
41631
	(grub_video_i386_vbeblit_blend_BGRA8888_RGBA8888): Likewise.
41632
	(grub_video_i386_vbeblit_blend_BGR888_RGBA8888): Likewise.
41633
	(grub_video_i386_vbeblit_blend_RGBA8888_RGBA8888): Likewise.
41634
	(grub_video_i386_vbeblit_blend_RGB888_RGBA8888): Likewise.
41635
	(grub_video_i386_vbeblit_blend_index_RGBA8888): Likewise.
41636
41637
	* include/grub/i386/pc/vbefill.h (grub_video_i386_vbefill_R8G8B8A8) Removed.
41638
	(grub_video_i386_vbefill_R8G8B8): Likewise.
41639
	(grub_video_i386_vbefill_index): Likewise.
41640
	(grub_video_i386_vbefill_direct32): Added.
41641
	(grub_video_i386_vbefill_direct24): Likewise.
41642
	(grub_video_i386_vbefill_direct16): Likewise.
41643
	(grub_video_i386_vbefill_direct8): Likewise.
41644
41645
	* include/grub/video.h (grub_video_blit_format): Removed
41646
	GRUB_VIDEO_BLIT_FORMAT_R8G8B8A8, GRUB_VIDEO_BLIT_FORMAT_R8G8B8.
41647
	(grub_video_blit_format): Added GRUB_VIDEO_BLIT_FORMAT_RGBA_8888,
41648
	GRUB_VIDEO_BLIT_FORMAT_BGRA_8888, GRUB_VIDEO_BLIT_FORMAT_RGB_888,
41649
	GRUB_VIDEO_BLIT_FORMAT_BGR_888, GRUB_VIDEO_BLIT_FORMAT_RGB_565,
41650
	GRUB_VIDEO_BLIT_FORMAT_BGR_565.
41651
41652
	* video/video.c (grub_video_get_blit_format): Updated to use new
41653
	blit formats.  Added handling for 16 bit color modes.
41654
41655
	* video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Updated to use new
41656
	fillers.
41657
	(common_blitter): Updated to use new blitters.
41658
41659
	* video/i386/pc/vbeblit.c (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8A8):
41660
	Removed.
41661
	(grub_video_i386_vbeblit_R8G8B8X8_R8G8B8X8): Likewise.
41662
	(grub_video_i386_vbeblit_R8G8B8_R8G8B8A8): Likewise.
41663
	(grub_video_i386_vbeblit_R8G8B8_R8G8B8X8): Likewise.
41664
	(grub_video_i386_vbeblit_index_R8G8B8A8): Likewise.
41665
	(grub_video_i386_vbeblit_index_R8G8B8X8): Likewise.
41666
	(grub_video_i386_vbeblit_R8G8B8A8_R8G8B8): Likewise.
41667
	(grub_video_i386_vbeblit_R8G8B8_R8G8B8): Likewise.
41668
	(grub_video_i386_vbeblit_index_R8G8B8): Likewise.
41669
	(grub_video_i386_vbeblit_index_index): Likewise.
41670
	(grub_video_i386_vbeblit_replace_directN): Added.
41671
	(grub_video_i386_vbeblit_replace_BGRX8888_RGBX8888): Likewise.
41672
	(grub_video_i386_vbeblit_replace_BGRX8888_RGB888): Likewise.
41673
	(grub_video_i386_vbeblit_replace_BGR888_RGBX8888): Likewise.
41674
	(grub_video_i386_vbeblit_replace_BGR888_RGB888): Likewise.
41675
	(grub_video_i386_vbeblit_replace_RGBX8888_RGB888): Likewise.
41676
	(grub_video_i386_vbeblit_replace_RGB888_RGBX8888): Likewise.
41677
	(grub_video_i386_vbeblit_replace_index_RGBX8888): Likewise.
41678
	(grub_video_i386_vbeblit_replace_index_RGB888): Likewise.
41679
	(grub_video_i386_vbeblit_blend_BGRA8888_RGBA8888): Likewise.
41680
	(grub_video_i386_vbeblit_blend_BGR888_RGBA8888): Likewise.
41681
	(grub_video_i386_vbeblit_blend_RGBA8888_RGBA8888): Likewise.
41682
	(grub_video_i386_vbeblit_blend_RGB888_RGBA8888): Likewise.
41683
	(grub_video_i386_vbeblit_blend_index_RGBA8888): Likewise.
41684
41685
	* video/i386/pc/vbefill.c (grub_video_i386_vbefill_R8G8B8A8): Removed.
41686
	(grub_video_i386_vbefill_R8G8B8): Likewise.
41687
	(grub_video_i386_vbefill_index): Likewise.
41688
	(grub_video_i386_vbefill_direct32): Added.
41689
	(grub_video_i386_vbefill_direct24): Likewise.
41690
	(grub_video_i386_vbefill_direct16): Likewise.
41691
	(grub_video_i386_vbefill_direct8): Likewise.
41692
41693
	* video/readers/jpeg.c (grub_jpeg_decode_sos): Adapt to new blitter
41694
	types.
41695
41696
	* video/readers/tga.c (grub_video_reader_tga): Adapt to new blitter
41697
	types.
41698
41699
	* video/readers/png.c (grub_png_decode_image_header): Adapt to new
41700
	blitter types.
41701
41702
	* video/bitmap.c (grub_video_bitmap_create): Adapt to new blitter
41703
	types.
41704
41705
2008-09-06  Felix Zielcke  <fzielcke@z-51.de>
41706
41707
	* disk/raid.c (insert_array): Set `array->chunk_size' to 64 for
41708
	RAID level 1.
41709
41710
2008-09-06  Felix Zielcke  <fzielcke@z-51.de>
41711
41712
	* fs/iso9660.c (grub_iso9660_date): New structure.
41713
	(grub_iso9660_primary_voldesc): Add `grub_iso9660_date' member.
41714
	(grub_iso9660_uuid): New function.
41715
41716
2008-09-05  Bean  <bean123ch@gmail.com>
41717
41718
	* fs/fshelp.c (grub_fshelp_find_file): Handle case insensitive names.
41719
41720
	* fs/ntfs.c (list_file): Ignore names in DOS namespace, set the case
41721
	insensitive bit for names in Win32 and Win32 & DOS namespace.
41722
41723
	* include/grub/fshelp.h (GRUB_FSHELP_CASE_INSENSITIVE): New macro.
41724
41725
	* include/grub/types.h (LONG_MAX): Likewise.
41726
41727
2008-09-04  Felix Zielcke  <fzielcke@z-51.de>
41728
41729
	* util/getroot.c: Include <config.h>.
41730
	(grub_util_get_grub_dev): Rewrite to use asprintf for mdraid devices,
41731
	add support for /dev/md/N devices and handle LVM double dash escaping.
41732
41733
2008-09-04  Felix Zielcke  <fzielcke@z-51.de>
41734
41735
	* config.guess: Update to latest version from config git.
41736
	* config.sub: Likewise.
41737
41738
2008-09-03  Robert Millan  <rmh@aybabtu.com>
41739
41740
	* disk/scsi.c (grub_scsi_open): Remove size limit when printing
41741
	`disk->total_sectors'.
41742
41743
2008-09-01  Colin D Bennett  <colin@gibibit.com>
41744
41745
	* include/grub/normal.h: Fixed incorrect comment for
41746
	GRUB_COMMAND_FLAG_NO_ARG_PARSE.
41747
41748
2008-09-01  Colin D Bennett  <colin@gibibit.com>
41749
41750
	* commands/i386/pc/vbeinfo.c (grub_cmd_vbeinfo): Replaced constant
41751
	values with defines.
41752
41753
	* include/grub/i386/pc/vbe.h (GRUB_VBE_MODEATTR_SUPPORTED): Added.
41754
	(GRUB_VBE_MODEATTR_RESERVED_1): Likewise.
41755
	(GRUB_VBE_MODEATTR_BIOS_TTY_OUTPUT_SUPPORT): Likewise.
41756
	(GRUB_VBE_MODEATTR_COLOR): Likewise.
41757
	(GRUB_VBE_MODEATTR_GRAPHICS): Likewise.
41758
	(GRUB_VBE_MODEATTR_VGA_COMPATIBLE): Likewise.
41759
	(GRUB_VBE_MODEATTR_VGA_WINDOWED_AVAIL): Likewise.
41760
	(GRUB_VBE_MODEATTR_LFB_AVAIL): Likewise.
41761
	(GRUB_VBE_MODEATTR_DOUBLE_SCAN_AVAIL): Likewise.
41762
	(GRUB_VBE_MODEATTR_INTERLACED_AVAIL): Likewise.
41763
	(GRUB_VBE_MODEATTR_TRIPLE_BUF_AVAIL): Likewise.
41764
	(GRUB_VBE_MODEATTR_STEREO_AVAIL): Likewise.
41765
	(GRUB_VBE_MODEATTR_DUAL_DISPLAY_START): Likewise.
41766
	(GRUB_VBE_MEMORY_MODEL_TEXT): Likewise.
41767
	(GRUB_VBE_MEMORY_MODEL_CGA): Likewise.
41768
	(GRUB_VBE_MEMORY_MODEL_HERCULES): Likewise.
41769
	(GRUB_VBE_MEMORY_MODEL_PLANAR): Likewise.
41770
	(GRUB_VBE_MEMORY_MODEL_NONCHAIN4_256): Likewise.
41771
	(GRUB_VBE_MEMORY_MODEL_YUV): Likewise.
41772
41773
2008-08-31  Robert Millan  <rmh@aybabtu.com>
41774
41775
	* loader/i386/pc/multiboot.c (grub_get_multiboot_mmap_len): Fix
41776
	declaration.
41777
	(grub_multiboot): Fix a few warnings.
41778
41779
2008-08-31  Robert Millan  <rmh@aybabtu.com>
41780
41781
	* loader/i386/pc/multiboot.c: Update comment not to say that
41782
	boot_device support is unimplemented.
41783
41784
2008-08-31  Robert Millan  <rmh@aybabtu.com>
41785
41786
	* loader/i386/pc/multiboot.c: Update comment not to say that a.out
41787
	or memory map support are unimplemented.
41788
41789
2008-08-31  Colin D Bennett  <colin@gibibit.com>
41790
41791
	* util/i386/pc/grub-mkrescue.in: Support multiple overlay directories.
41792
41793
2008-08-31  Colin D Bennett  <colin@gibibit.com>
41794
41795
	* commands/i386/pc/vbeinfo.c (grub_cmd_vbeinfo): Show VBE version and
41796
	total video memory in 'vbeinfo' output; show color format details for
41797
	each video mode.
41798
41799
2008-08-30  Pavel Roskin  <proski@gnu.org>
41800
41801
	* util/genmoddep.c: Remove for real this time.
41802
	* DISTLIST: Remove util/genmoddep.c.
41803
41804
2008-08-30  Robert Millan  <rmh@aybabtu.com>
41805
41806
	* kern/i386/pc/startup.S (multiboot_header): Force 4-byte alignment
41807
	as required by Multiboot spec (it was already 4-byte aligned, but
41808
	only by chance).
41809
41810
2008-08-29  Pavel Roskin  <proski@gnu.org>
41811
41812
	* kern/powerpc/ieee1275/crt0.S: Rename to ...
41813
	* kern/powerpc/ieee1275/startup.S: ... this.
41814
	* conf/powerpc-ieee1275.rmk: Adjust for the above.
41815
	* DISTLIST: Likewise.
41816
41817
	* kern/powerpc/ieee1275/crt0.S: Include grub/symbol.h and
41818
	grub/cpu/kernel.h.  Add start label for consistency with other
41819
	platforms.  Add grub_prefix immediately after start.  Add jump
41820
	to the code after grub_prefix.
41821
	* include/grub/powerpc/kernel.h: Provide valid values for
41822
	GRUB_KERNEL_CPU_PREFIX and GRUB_KERNEL_CPU_DATA_END.
41823
41824
2008-08-29  Bean  <bean123ch@gmail.com>
41825
41826
	* configure.ac: Change host_os to cygwin for mingw.
41827
	(asprintf): New check for function.
41828
41829
	* include/grub/symbol.h: Replace #ifndef __CYGWIN__ with
41830
	#if ! defined (__CYGWIN__) && ! defined (__MINGW32__).
41831
41832
	* include/grub/util/misc.h: #include <config.h> and <grub/types.h>,
41833
	declare asprintf if HAVE_ASPRINTF is not set, declare fseeko, ftello,
41834
	sync, sleep and grub_util_get_disk_size for mingw.
41835
41836
	* util/biosdisk.c (grub_util_biosdisk_open): Use grub_util_get_disk_size
41837
	to get size in mingw.
41838
	(open_device): Use flag O_BINARY if it's defined.
41839
	(find_root_device): Add dummy code for mingw.
41840
41841
	* util/grub-mkdevicemap.c (get_floppy_disk_name): Return 0 for mingw.
41842
	(get_ide_disk_name): Return //./PHYSICALDRIVE%d for mingw.
41843
	(get_scsi_disk_name): Return 0 for mingw.
41844
41845
	* util/hostfs.c: #include <grub/util/misc.h>.
41846
	(grub_hostfs_open): Use "rb" flag to open file, use
41847
	grub_util_get_disk_size to get disk size for mingw.
41848
41849
	* util/misc.c: #include <windows.h> and <winioctl.h> in mingw.
41850
	(asprintf): New function if HAVE_ASPRINTF is not set.
41851
	(sync): New function for mingw.
41852
	(sleep): Likewise.
41853
	(grub_util_get_disk_size): Likewise.
41854
41855
2008-08-28  Pavel Roskin  <proski@gnu.org>
41856
41857
	* conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add
41858
	kern/time.c.
41859
41860
2008-08-28  Robert Millan  <rmh@aybabtu.com>
41861
41862
	* util/biosdisk.c (find_grub_drive): Declare missing `i' variable.
41863
41864
2008-08-28  Robert Millan  <rmh@aybabtu.com>
41865
41866
	Change find_grub_drive() syntax so it doesn't prevent it from
41867
	detecting NULL names as errors.
41868
41869
	* util/biosdisk.c (find_grub_drive): Move free slot search code
41870
	from here ...
41871
	(find_free_slot): ... to here.
41872
	(read_device_map): Use find_free_slot() to search for free slots.
41873
41874
2008-08-27  Marco Gerards  <marco@gnu.org>
41875
41876
	* conf/common.rmk (pkglib_MODULES): Add scsi.mod.
41877
	(scsi_mod_SOURCES): New variable.
41878
	(scsi_mod_CFLAGS): Likewise
41879
	(scsi_mod_LDFLAGS): Likewise.
41880
41881
	* disk/scsi.c: New file.
41882
41883
	* include/grub/scsi.h: Likewise.
41884
41885
	* include/grub/scsicmd.h: Likewise.
41886
41887
	* disk/ata.c: Include <grub/scsi.h>.
41888
	(grub_atapi_packet): Do not use grub_ata_cmd, use registers
41889
	instead.
41890
	(grub_ata_iterate): Skip ATAPI devices.
41891
	(grub_ata_open): Only handle ATAPI devices.
41892
	(struct grub_atapi_read): Removed.
41893
	(grub_atapi_readsector): Likewise.
41894
	(grub_ata_read): No longer handle ATAPI devices.
41895
	(grub_ata_write): Likewise.
41896
	(grub_atapi_iterate): New function.
41897
	(grub_atapi_read): Likewise.
41898
	(grub_atapi_write): Likewise.
41899
	(grub_atapi_open): Likewise.
41900
	(grub_atapi_close): Likewise.
41901
	(grub_atapi_dev): New variable.
41902
	(GRUB_MOD_INIT(ata)): Register ATAPI as SCSI device.
41903
	(GRUB_MOD_FINI(ata)): Unregister ATAPI.
41904
41905
	* include/grub/disk.h (enum grub_disk_dev_id): Add
41906
	`GRUB_DISK_DEVICE_SCSI_ID'.
41907
41908
2008-08-26  Robert Millan  <rmh@aybabtu.com>
41909
41910
	* util/biosdisk.c (grub_util_biosdisk_open, open_device)
41911
	(grub_util_biosdisk_get_grub_dev): Make error messages a bit more
41912
	descriptive.
41913
41914
2008-08-23  Bean  <bean123ch@gmail.com>
41915
41916
	* conf/common.rmk (grub_probe_SOURCES): Add disk/mdraid_linux.c.
41917
	(grub_fstest_SOURCES): Add disk/raid5_recover.c, disk/raid6_recover.c,
41918
	disk/mdraid_linux.c and disk/dmraid_nvidia.c and lib/crc.c.
41919
	(pkglib_MODULES): Add raid5rec.mod, raid6rec.mod, mdraid.mod and
41920
	dm_nv.mod.
41921
	(raid5rec_mod_SOURCES): New macro.
41922
	(raid5rec_mod_CFLAGS): Likewise.
41923
	(raid5rec_mod_LDFLAGS): Likewise.
41924
	(raid6rec_mod_SOURCES): Likewise.
41925
	(raid6rec_mod_CFLAGS): Likewise.
41926
	(raid6rec_mod_LDFLAGS): Likewise.
41927
	(mdraid_mod_SOURCES): Likewise.
41928
	(mdraid_mod_CFLAGS): Likewise.
41929
	(mdraid_mod_LDFLAGS): Likewise.
41930
	(dm_nv_mod_SOURCES): Likewise.
41931
	(dm_nv_mod_CFLAGS): Likewise.
41932
	(dm_nv_mod_LDFLAGS): Likewise.
41933
41934
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add disk/mdraid_linux.c.
41935
	(grub_emu_SOURCES):  Add disk/raid5_recover.c, disk/raid6_recover.c,
41936
	disk/mdraid_linux.c and disk/dmraid_nvidia.c.
41937
41938
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add disk/raid5_recover.c,
41939
	disk/raid6_recover.c, disk/mdraid_linux.c and disk/dmraid_nvidia.c.
41940
41941
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
41942
41943
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
41944
41945
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
41946
41947
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
41948
41949
	* disk/raid5_recover.c: New file.
41950
41951
	* disk/raid6_recover.c: Likewise.
41952
41953
	* disk/mdraid_linux.c: Likewise.
41954
41955
	* disk/dmraid_nvidia.c: Likewise.
41956
41957
	* disk/i386/pc/biosdisk.c: Set total_sectors of cdrom device to
41958
	ULONG_MAX.
41959
41960
	* disk/raid.c (grub_raid_open): Use the size of the smallest disk to
41961
	calculate the size of raid device.
41962
	(grub_raid_read): Simplify raid0 code. Support raid4, raid6 and four
41963
	different layout of raid5.
41964
	(grub_raid_scan_device): Remove code specific to mdraid.
41965
	(grub_raid_list): New variable.
41966
	(free_array): New function.
41967
	(grub_raid_register): Likewise.
41968
	(grub_raid_unregister): Likewise.
41969
	(grub_raid_rescan): Likewise.
41970
	(GRUB_MOD_INIT): Don't iterate device here.
41971
	(GRUB_MOD_FINI): Use free_array to release resource.
41972
41973
	* include/grub/raid.h: Remove macro and structure specific to mdraid.
41974
	(grub_raid5_recover_func_t): New function variable type.
41975
	(grub_raid6_recover_func_t): Likewise.
41976
	(grub_raid5_recover_func): New variable.
41977
	(grub_raid6_recover_func): Likewise.
41978
	(grub_raid_register): New function.
41979
	(grub_raid_unregister): Likewise.
41980
	(grub_raid_rescan): Likewise.
41981
	(grub_raid_block_xor): Likewise.
41982
41983
	* util/grub-fstest.c: Add #include <grub/raid.h> and <grub/lib/crc.h>.
41984
	(CMD_CRC): New macro.
41985
	(part): Removed.
41986
	(read_file): Handle device as well as file.
41987
	(cmd_crc): New function.
41988
	(fstest): Handle multiple disks.
41989
	(options): Remove part, raw and long, add root and diskcount.
41990
	(usage): Add crc, remove -p, -r, -l, add -r and -c.
41991
	(main): Find the first non option entry and ignore subsequent options,
41992
	add handling for the new options, support multiple disks.
41993
41994
	* util/grub-probe.c (probe): Add mdraid to abstraction_name.
41995
41996
2008-08-23  Bean  <bean123ch@gmail.com>
41997
41998
	* normal/x86_64/setjmp.S (grub_longjmp): Return 1 when val = 0.
41999
42000
	* genfslist.sh: Ignore kernel.mod.
42001
42002
	* genpartmaplist.sh: Likewise.
42003
42004
2008-08-23  Robert Millan  <rmh@aybabtu.com>
42005
42006
	* util/getroot.c (find_root_device): Skip anything that starts with
42007
	a dot, not just directories.  This avoids things like /dev/.tmp.md0.
42008
42009
2008-08-22  Felix Zielcke  <fzielcke@z-51.de>
42010
42011
	* util/update-grub.in (GRUB_GFXMODE): Export variable.
42012
	* util/grub.d/00_header.in: Allow the administrator to change default
42013
	gfxmode via ${GRUB_GFXMODE}.
42014
42015
2008-08-21  Felix Zielcke  <fzielcke@z-51.de>
42016
42017
	* fs/ntfs.c (grub_ntfs_mount): Fix a memory leak.
42018
42019
2008-08-21  Robert Millan  <rmh@aybabtu.com>
42020
42021
	* loader/i386/linux.c: New file.  Implements generic 32-bit Linux
42022
	loader.
42023
	* conf/i386-coreboot.rmk (_linux_mod_SOURCES): Replace
42024
	`loader/i386/pc/linux.c' with `loader/i386/linux.c'.
42025
42026
2008-08-20  Carles Pina i Estany  <carles@pina.cat>
42027
42028
	* menu/normal.c (run_menu): Replace hardcoded numbers with macros
42029
	(16 for GRUB_TERM_UP and 14 for GRUB_TERM_DOWN)
42030
42031
2008-08-19  Robert Millan  <rmh@aybabtu.com>
42032
42033
	* term/gfxterm.c (DEFAULT_CURSOR_COLOR): Remove.
42034
	(struct grub_virtual_screen): Remove `cursor_color'.
42035
	(grub_virtual_screen_setup): Remove `virtual_screen.cursor_color'
42036
	initialization.
42037
	(write_cursor): Use `virtual_screen.fg_color' to draw cursor.
42038
42039
2008-08-18  Robert Millan  <rmh@aybabtu.com>
42040
42041
	Unify (identical) linux_normal.c files.
42042
	* loader/i386/efi/linux_normal.c: Move from here ...
42043
	* loader/linux_normal.c: ... to here.  Update all users.
42044
	* loader/i386/pc/linux_normal.c: Delete.  Update all users.
42045
	* loader/i386/ieee1275/linux_normal.c: Likewise.
42046
42047
2008-08-18  Robert Millan  <rmh@aybabtu.com>
42048
42049
	* include/grub/i386/linux.h (LINUX_LOADER_ID_LILO)
42050
	(LINUX_LOADER_ID_LOADLIN, LINUX_LOADER_ID_BOOTSECT)
42051
	(LINUX_LOADER_ID_SYSLINUX, LINUX_LOADER_ID_ETHERBOOT)
42052
	(LINUX_LOADER_ID_ELILO, LINUX_LOADER_ID_GRUB, LINUX_LOADER_ID_UBOOT)
42053
	(LINUX_LOADER_ID_XEN, LINUX_LOADER_ID_GUJIN, LINUX_LOADER_ID_QEMU):
42054
	New macros.
42055
	(GRUB_LINUX_CL_OFFSET, GRUB_LINUX_CL_END_OFFSET): Move from here ...
42056
	* loader/i386/pc/linux.c (GRUB_LINUX_CL_OFFSET)
42057
	(GRUB_LINUX_CL_END_OFFSET): ... to here.
42058
	* loader/i386/efi/linux.c (GRUB_EFI_CL_OFFSET): Rename to ...
42059
	(GRUB_LINUX_CL_OFFSET): ... this.  Update all users.
42060
	(GRUB_EFI_CL_END_OFFSET): Rename to ...
42061
	(GRUB_LINUX_CL_END_OFFSET): ... this.  Update all users.
42062
	(grub_rescue_cmd_linux): Macroify `type_of_loader' initialization.
42063
	Initialize `params->video_cursor_x' and `params->video_cursor_y'
42064
	portably using grub_getxy().
42065
	Replace `-EFI' with `-bzImage' in boot message.
42066
42067
2008-08-17  Robert Millan  <rmh@aybabtu.com>
42068
42069
	* include/grub/x86_64/kernel.h: New file (<grub/i386/kernel.h> stub).
42070
42071
2008-08-17  Robert Millan  <rmh@aybabtu.com>
42072
42073
	* conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/pc/mmap.c'.
42074
42075
	* include/grub/i386/pc/init.h (GRUB_MACHINE_MEMORY_AVAILABLE)
42076
	(GRUB_MACHINE_MEMORY_RESERVED): New macros.
42077
	(grub_machine_mmap_iterate): New function declaration.
42078
	* include/grub/multiboot.h (struct grub_multiboot_mmap_entry): New
42079
	structure.
42080
	(GRUB_MMAP_MEMORY_AVAILABLE, GRUB_MMAP_MEMORY_RESERVED): New
42081
	macros.
42082
42083
	* kern/i386/pc/init.c (grub_machine_init): Replace hardcoded region
42084
	type check value with `GRUB_MACHINE_MEMORY_AVAILABLE'.
42085
	Move e820 parsing from here ...
42086
	* kern/i386/pc/mmap.c: New file.
42087
	(grub_machine_mmap_iterate): ... to here.
42088
42089
	* include/grub/i386/coreboot/memory.h: Remove `<grub/err.h>'.
42090
	(GRUB_LINUXBIOS_MEMORY_AVAILABLE): Rename (for consistency) to ...
42091
	(GRUB_MACHINE_MEMORY_AVAILABLE): ... this.  Update all users.
42092
	(grub_available_iterate): Redeclare to return `void', and redeclare
42093
	its hook to use grub_uint64_t as addr and size parameters, and rename
42094
	to ...
42095
	(grub_machine_mmap_iterate): ... this.  Update all users.
42096
42097
	* kern/i386/coreboot/mmap.c (grub_mmap_iterate): Simplify parser loop
42098
	to make it more readable.  Rename to ...
42099
	(grub_machine_mmap_iterate): ... this.
42100
42101
	* loader/i386/pc/multiboot.c (mmap_addr, mmap_length): New variables.
42102
	(grub_get_multiboot_mmap_len, grub_fill_multiboot_mmap): New functions.
42103
	(grub_multiboot): Allocate an extra region after the payload, and fill
42104
	it with a Multiboot memory map.  Adjust a.out loader to calculate size
42105
	with the extra space.
42106
	(grub_multiboot_load_elf32): Adjust elf32 loader to calculate size
42107
	with the extra space.
42108
42109
2008-08-17  Carles Pina i Estany  <carles@pina.cat>
42110
42111
	* menu/normal.c (run_menu): Add Home and End keys in grub-menu.
42112
42113
2008-08-17  Felix Zielcke  <fzielcke@z-51.de>
42114
42115
	* gendistlist.sh: Add *.y, *.tex, *.texi, grub.cfg, README, *.sc,
42116
	mdate-sh to the list `find' searches for.
42117
	* DISTLIST: Regenerated.
42118
42119
2008-08-16  Felix Zielcke  <fzielcke@z-51.de>
42120
42121
	* gendistlist.sh (EXTRA_DISTFILES): Remove gensymlist.sh,
42122
	genkernsyms.sh.  Add geninit.sh, geninitheader.sh, genkernsyms.sh.in,
42123
	genmoddep.awk, gensymlist.sh.in.
42124
	(DISTDIRS): Add bus, docs, hook, lib.
42125
	* DISTLIST: Regenerated.
42126
	* NEWS: Add cygwin support and change the `os-prober' entry a bit.
42127
42128
2008-08-16  Robert Millan  <rmh@aybabtu.com>
42129
42130
	* disk/raid.c (grub_raid_init): Handle/report errors set by
42131
	grub_device_iterate().
42132
	* disk/lvm.c (grub_lvm_init): Likewise.
42133
42134
2008-08-15  Bean  <bean123ch@gmail.com>
42135
42136
	* conf/i386-pc.rmk (pkglib_MODULES): Add datetime.mod, date.mod
42137
	and datehook.mod.
42138
	(datetime_mod_SOURCES): New macro.
42139
	(datetime_mod_CFLAGS): Likewise.
42140
	(datetime_mod_LDFLAGS): Likewise.
42141
	(date_mod_SOURCES): Likewise.
42142
	(date_mod_CFLAGS): Likewise.
42143
	(date_mod_LDFLAGS): Likewise.
42144
	(datehook_mod_SOURCES): Likewise.
42145
	(datehook_mod_CFLAGS): Likewise.
42146
	(datehook_mod_LDFLAGS): Likewise.
42147
42148
	* conf/i386-coreboot.rmk (pkglib_MODULES): Add datetime.mod, date.mod
42149
	and datehook.mod.
42150
	(datetime_mod_SOURCES): New macro.
42151
	(datetime_mod_CFLAGS): Likewise.
42152
	(datetime_mod_LDFLAGS): Likewise.
42153
	(date_mod_SOURCES): Likewise.
42154
	(date_mod_CFLAGS): Likewise.
42155
	(date_mod_LDFLAGS): Likewise.
42156
	(datehook_mod_SOURCES): Likewise.
42157
	(datehook_mod_CFLAGS): Likewise.
42158
	(datehook_mod_LDFLAGS): Likewise.
42159
42160
	* conf/i386-ieee1275.rmk (pkglib_MODULES): Add datetime.mod, date.mod
42161
	and datehook.mod.
42162
	(datetime_mod_SOURCES): New macro.
42163
	(datetime_mod_CFLAGS): Likewise.
42164
	(datetime_mod_LDFLAGS): Likewise.
42165
	(date_mod_SOURCES): Likewise.
42166
	(date_mod_CFLAGS): Likewise.
42167
	(date_mod_LDFLAGS): Likewise.
42168
	(datehook_mod_SOURCES): Likewise.
42169
	(datehook_mod_CFLAGS): Likewise.
42170
	(datehook_mod_LDFLAGS): Likewise.
42171
42172
	* conf/i386-efi.rmk (pkglib_MODULES): Add datetime.mod, date.mod
42173
	and datehook.mod.
42174
	(datetime_mod_SOURCES): New macro.
42175
	(datetime_mod_CFLAGS): Likewise.
42176
	(datetime_mod_LDFLAGS): Likewise.
42177
	(date_mod_SOURCES): Likewise.
42178
	(date_mod_CFLAGS): Likewise.
42179
	(date_mod_LDFLAGS): Likewise.
42180
	(datehook_mod_SOURCES): Likewise.
42181
	(datehook_mod_CFLAGS): Likewise.
42182
	(datehook_mod_LDFLAGS): Likewise.
42183
42184
	* conf/x86_64-efi.rmk (pkglib_MODULES): Add datetime.mod, date.mod
42185
	and datehook.mod.
42186
	(datetime_mod_SOURCES): New macro.
42187
	(datetime_mod_CFLAGS): Likewise.
42188
	(datetime_mod_LDFLAGS): Likewise.
42189
	(date_mod_SOURCES): Likewise.
42190
	(date_mod_CFLAGS): Likewise.
42191
	(date_mod_LDFLAGS): Likewise.
42192
	(datehook_mod_SOURCES): Likewise.
42193
	(datehook_mod_CFLAGS): Likewise.
42194
	(datehook_mod_LDFLAGS): Likewise.
42195
42196
	* kern/env.c (grub_env_insert): Fix a bug in prevp pointer.
42197
42198
	* commands/date.c: New file.
42199
42200
	* hook/datehook.c: Likewise.
42201
42202
	* include/grub/lib/datetime.h: Likewise.
42203
42204
	* include/grub/i386/cmos.h: Likewise.
42205
42206
	* lib/datetime.c: Likewise.
42207
42208
	* lib/i386/datetime.c: Likewise.
42209
42210
	* lib/efi/datetime.c: Likewise.
42211
42212
2008-08-14  Robert Millan  <rmh@aybabtu.com>
42213
42214
	* conf/common.rmk (bin_UTILITIES): Add `grub-mkelfimage'.
42215
	(grub_mkelfimage_SOURCES): New variable.
42216
	(util/elf/grub-mkimage.c_DEPENDENCIES): Likewise.
42217
42218
	* conf/i386-coreboot.rmk (bin_UTILITIES, grub_mkimage_SOURCES)
42219
	(grub_mkimage_LDFLAGS, util/elf/grub-mkimage.c_DEPENDENCIES): Remove.
42220
	* conf/powerpc-ieee1275.rmk: Likewise.
42221
	* conf/i386-ieee1275.rmk: Likewise.
42222
42223
	* kern/ieee1275/init.c: Include `<grub/cpu/kernel.h>'.
42224
	* kern/i386/coreboot/init.c: Likewise.
42225
42226
	* kern/i386/ieee1275/startup.S: Replace `<grub/machine/kernel.h>'
42227
	with `<grub/cpu/kernel.h>'.
42228
	(GRUB_KERNEL_MACHINE_PREFIX, GRUB_KERNEL_MACHINE_DATA_END): Renamed
42229
	to ...
42230
	(GRUB_KERNEL_CPU_PREFIX, GRUB_KERNEL_CPU_DATA_END): ... this.
42231
	* kern/i386/coreboot/startup.S: Likewise.
42232
42233
	* include/grub/powerpc/ieee1275/kernel.h (GRUB_MOD_ALIGN)
42234
	(GRUB_MOD_GAP): Remove.
42235
	* include/grub/powerpc/kernel.h: New file.
42236
	* include/grub/i386/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_PREFIX)
42237
	(GRUB_KERNEL_MACHINE_DATA_END): Remove.
42238
	* include/grub/i386/kernel.h: New file.
42239
	* include/grub/i386/coreboot/kernel.h (GRUB_MOD_ALIGN)
42240
	(GRUB_MOD_GAP, GRUB_KERNEL_MACHINE_PREFIX)
42241
	(GRUB_KERNEL_MACHINE_DATA_END): Remove.
42242
42243
	* util/ieee1275/grub-install.in (grub_mkimage): Initialize to use
42244
	`grub-mkelfimage'.
42245
	Use --directory when invoking grub_mkimage.
42246
42247
	* util/elf/grub-mkimage.c: Include `<grub/cpu/kernel.h>'.
42248
	(add_segments): Replace GRUB_KERNEL_MACHINE_DATA_END and
42249
	GRUB_KERNEL_MACHINE_PREFIX with GRUB_KERNEL_CPU_DATA_END
42250
	and GRUB_KERNEL_CPU_PREFIX.
42251
42252
2008-08-14  Felix Zielcke  <fzielcke@z-51.de>
42253
42254
	* include/grub/err.h (grub_err_printf): New function prototype.
42255
	* util/misc.c (grub_err_printf): New function.
42256
	* kern/misc.c [! GRUB_UTIL] (grub_err_printf): New alias for
42257
	grub_printf.
42258
	* kern/err.c (grub_print_error): Use grub_err_printf.
42259
42260
2008-08-13  Robert Millan  <rmh@aybabtu.com>
42261
42262
	* docs/grub.cfg: Remove `/dev/' prefix in GNU/Hurd boot entry.
42263
42264
2008-08-13  Robert Millan  <rmh@aybabtu.com>
42265
42266
	* docs/grub.cfg: Use the native device name for the example GNU/Hurd
42267
	boot entry.
42268
42269
2008-08-12  Robert Millan  <rmh@aybabtu.com>
42270
42271
	* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Move part
42272
	of the relocation code from here ...
42273
	(grub_multiboot): ... to here.
42274
	(forward_relocator, backward_relocator): Move from here ...
42275
	* kern/i386/loader.S (grub_multiboot_forward_relocator)
42276
	(grub_multiboot_backward_relocator): ... to here.
42277
	(grub_multiboot_real_boot): Use %edx for entry offset.  Put Multiboot
42278
	magic in %eax.  Use %ebp for jumping (so %edx is not trashed).
42279
	* include/grub/i386/loader.h (grub_multiboot_forward_relocator)
42280
	(grub_multiboot_forward_relocator_end)
42281
	(grub_multiboot_backward_relocator)
42282
	(grub_multiboot_backward_relocator_end): New variables.
42283
42284
2008-08-12  Bean  <bean123ch@gmail.com>
42285
42286
	* disk/raid.c (grub_raid_read): Fix a bug in raid0 code.
42287
42288
2008-08-11  Robert Millan  <rmh@aybabtu.com>
42289
42290
	* kern/i386/linuxbios/startup.S: Move from here ...
42291
	* kern/i386/coreboot/startup.S: ... to here.
42292
42293
	* kern/i386/linuxbios/init.c: Move from here ...
42294
	* kern/i386/coreboot/init.c: ... to here.
42295
42296
	* kern/i386/linuxbios/table.c: Move from here ...
42297
	* kern/i386/coreboot/mmap.c: ... to here.
42298
42299
	* conf/i386-coreboot.rmk (kernel_elf_SOURCES): Update moved files.
42300
42301
2008-08-11  Robert Millan  <rmh@aybabtu.com>
42302
42303
	* kern/device.c (grub_device_open): Do not handle grub_disk_open()
42304
	errors.  Leave it to the upper layer to handle them.
42305
42306
2008-08-09  Christian Franke  <franke@computer.org>
42307
42308
	* Makefile.in: Add `target_os' and `enable_grub_pe2elf'.
42309
	* conf/common.rmk: Install `grub-pe2elf' only if requested.
42310
	Install `grub.d/10_windows' only on Cygwin.
42311
	* configure.ac: Add subst of `target_os'.
42312
	Check `target_os' also before setting TARGET_OBJ2ELF.
42313
	Add `--enable-grub-pe2elf'.
42314
42315
2008-08-08  Robert Millan  <rmh@aybabtu.com>
42316
42317
	* kern/disk.c: Replace `<grub/machine/time.h>' with `<grub/time.h>'.
42318
	(grub_last_time): Change type to grub_uint64_t.
42319
	(grub_disk_open): Migrate code from to using grub_get_time_ms().
42320
	(grub_disk_close): Likewise.
42321
42322
	* normal/menu.c: Replace `<grub/machine/time.h>' with `<grub/time.h>'.
42323
	(run_menu): Migrate code from to using grub_get_time_ms().
42324
42325
	* util/misc.c (grub_get_time_ms): New function.
42326
42327
2008-08-08  Marco Gerards  <marco@gnu.org>
42328
42329
	* disk/ata.c (grub_ata_regget): Change return type to
42330
	`grub_uint8_t'.
42331
	(grub_ata_regget2): Likewise.
42332
	(grub_ata_wait_status): New function.
42333
	(grub_ata_wait_busy): Removed function, updated all users to use
42334
	`grub_ata_wait_status'.
42335
	(grub_ata_wait_drq): Likewise.
42336
	(grub_ata_cmd): New function.
42337
	(grub_ata_pio_read): Change return type to `grub_uint8_t'.  Add
42338
	error handling.
42339
	(grub_ata_pio_write): Add error handling.
42340
	(grub_atapi_identify): Likewise.
42341
	(grub_atapi_packet): Use `grub_ata_cmd' and improve error
42342
	handling.
42343
	(grub_ata_identify): Use `grub_ata_cmd' and improve error
42344
	handling.  Actually use the detected registers.  Reorder the
42345
	detection logic such that it is easier to read.
42346
	(grub_ata_pciinit): Do not assign the same ID to each controller.
42347
	(grub_ata_setaddress): Use `grub_ata_cmd' and improve error
42348
	handling.
42349
	(grub_atapi_readsector): Check the result of `grub_ata_pio_read'.
42350
42351
	* include/grub/err.h (grub_err_t): Add `GRUB_ERR_TIMEOUT'.
42352
42353
2008-08-08  Marco Gerards  <marco@gnu.org>
42354
42355
	* NEWS: Update.
42356
42357
2008-08-07  Bean  <bean123ch@gmail.com>
42358
42359
	* include/grub/x86_64/pci.h: New file.
42360
42361
2008-08-07  Christian Franke  <franke@computer.org>
42362
42363
	* kern/i386/pit.c (TIMER2_SPEAKER): New define.
42364
	(TIMER2_GATE): Likewise.
42365
	(grub_pit_wait): Add enable/disable of the timer2 gate
42366
	bit of port 0x61.  This fixes a possible infinite loop.
42367
42368
2008-08-07  Bean  <bean123ch@gmail.com>
42369
42370
	* conf/x86_64-efi.rmk (kernel_mod_SOURCES): Add kern/time.c,
42371
	kern/i386/tsc.c and kern/i386/pit.c.
42372
42373
	* include/grub/i386/tsc.h (grub_cpu_is_cpuid_supported): Handle
42374
	x86_64 platform.
42375
42376
	* kern/i386/efi/init.c: Replace <grub/cpu/tsc.h> with
42377
	<grub/i386/tsc.h>.
42378
42379
	* kern/i386/pit.c: Replace <grub/cpu/io.h> with <grub/i386/io.h>.
42380
42381
2008-08-07  Bean  <bean123ch@gmail.com>
42382
42383
	* conf/i386-efi.rmk (kernel_mod_SOURCES): Add kern/time.c.
42384
42385
	* conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add kern/time.c,
42386
42387
	* include/grub/i386/pit.h: Use macro KERNEL_CPU_PIT_HEADER to avoid
42388
	multiple inclusion. Add #include <grub/types.h>.
42389
42390
2008-08-06  Christian Franke  <franke@computer.org>
42391
42392
	* conf/common.rmk: Build and install `10_windows'.
42393
	* util/grub.d/10_windows.in: New script.
42394
42395
2008-08-06  Pavel Roskin  <proski@gnu.org>
42396
42397
	* kern/i386/pit.c: Include `<grub/i386/pit.h>'.
42398
42399
2008-08-06  Robert Millan  <rmh@aybabtu.com>
42400
42401
	* conf/i386-coreboot.rmk (kernel_elf_ASFLAGS): New variable.
42402
	* kern/i386/tsc.c: Include `<grub/i386/pit.h>'.
42403
42404
2008-08-06  Bean  <bean123ch@gmail.com>
42405
42406
	* fs/i386/pc/pxe.c (grub_pxe_data): New member block_size.
42407
	(grub_pxefs_fs_int): Remove dummy definition.
42408
	(grub_pxefs_open): Use data->block_size to store the current block
42409
	size setting.
42410
	(grub_pxefs_read): Use block size stored in data->block_size. As the
42411
	value of grub_pxe_blksize can be changed after the file is opened.
42412
42413
2008-08-06  Bean  <bean123ch@gmail.com>
42414
42415
	* fs/i386/pc/pxe.c (curr_file): new variable.
42416
	(grub_pxefs_open): Simply the handling of pxe file system. Don't
42417
	require the dummy internal file system anymore.
42418
	(grub_pxefs_read): Removed.
42419
	(grub_pxefs_close): Likewise.
42420
	(grub_pxefs_fs_int): Likewise.
42421
	(grub_pxefs_read_int): Renamed to grub_pxefs_read. Reinitialize tftp
42422
	connection when we switch file.
42423
	(grub_pxefs_close_int): Renamed to grub_pxefs_close.
42424
42425
2008-08-06  Robert Millan  <rmh@aybabtu.com>
42426
42427
	* conf/i386-coreboot.rmk (pkglib_MODULES): Add `reboot.mod' and
42428
	`halt.mod'.
42429
	(reboot_mod_SOURCES, reboot_mod_CFLAGS, reboot_mod_LDFLAGS)
42430
	(halt_mod_SOURCES, halt_mod_CFLAGS, halt_mod_LDFLAGS): New variables.
42431
42432
	* kern/i386/halt.c: New file.
42433
	* kern/i386/reboot.c: Likewise.
42434
	* include/grub/i386/reboot.h: Likewise.
42435
	* include/grub/i386/halt.h: Likewise.
42436
42437
	* commands/halt.c [! GRUB_MACHINE_IEEE1275 ! GRUB_MACHINE_EFI]:
42438
	Include `<grub/cpu/halt.h>'.
42439
	* commands/reboot.c [! GRUB_MACHINE_IEEE1275 ! GRUB_MACHINE_EFI]
42440
	[! GRUB_MACHINE_PCBIOS]: Include `<grub/cpu/reboot.h>'.
42441
42442
	* term/i386/pc/at_keyboard.c: Include `<grub/cpu/at_keyboard.h>'.
42443
	(SHIFT_L, SHIFT_R, CTRL, ALT, CAPS_LOCK, KEYBOARD_REG_DATA)
42444
	(KEYBOARD_REG_STATUS, KEYBOARD_COMMAND_ISREADY, KEYBOARD_COMMAND_READ)
42445
	(KEYBOARD_COMMAND_WRITE, KEYBOARD_COMMAND_REBOOT)
42446
	(KEYBOARD_SCANCODE_SET1, KEYBOARD_ISMAKE, KEYBOARD_ISREADY)
42447
	(KEYBOARD_SCANCODE, OLPC_UP, OLPC_DOWN, OLPC_LEFT, OLPC_RIGHT): Move
42448
	from here ...
42449
	* include/grub/i386/at_keyboard.h: ... to here.
42450
42451
2008-08-05  Robert Millan  <rmh@aybabtu.com>
42452
42453
	* conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/pit.c'.
42454
	* conf/i386-efi.rmk (kernel_mod_SOURCES): Likewise.
42455
	* conf/i386-coreboot.rmk (kernel_elf_SOURCES): Likewise. Also add
42456
	`kern/i386/tsc.c', `kern/generic/rtc_get_time_ms.c' and
42457
	`kern/generic/millisleep.c'.
42458
42459
	* kern/i386/tsc.c (calibrate_tsc): Rewrite using grub_pit_wait()
42460
	instead of grub_get_rtc().
42461
	(grub_tsc_init): Initialize `tsc_boot_time'.
42462
42463
	* kern/i386/linuxbios/init.c (grub_millisleep): Remove stub.
42464
	(grub_machine_init): Use grub_tsc_init() rather than
42465
	installing an RTC-based handler via grub_install_get_time_ms().
42466
42467
	* kern/i386/pit.c: New file.
42468
	* include/grub/i386/pit.h: Likewise.
42469
42470
2008-08-05  Bean  <bean123ch@gmail.com>
42471
42472
	* boot/i386/pc/pxeboot.S (_start): Use drive number 0x7F for pxe.
42473
42474
	* conf/i386-pc.rmk (kernel_img_HEADERS): Add machine/pxe.h.
42475
	(pkglib_MODULES): Add pxe.mod and pxecmd.mod.
42476
	(pxe_mod_SOURCES): New macro.
42477
	(pxe_mod_CFLAGS): Likewise.
42478
	(pxe_mod_LDFLAGS): Likewise.
42479
	(pxecmd_mod_SOURCES): Likewise.
42480
	(pxecmd_mod_CFLAGS): Likewise.
42481
	(pxecmd_mod_LDFLAGS): Likewise.
42482
42483
	* kern/i386/pc/startup.S (grub_pxe_scan): New function.
42484
	(grub_pxe_call): Likewise.
42485
42486
	* include/grub/disk.h (grub_disk_dev_id): Add GRUB_DISK_DEVICE_PXE_ID.
42487
42488
	* commands/i386/pc/pxecmd.c: New file.
42489
42490
	* fs/i386/pc/pxe.c: Likewise.
42491
42492
	* include/grub/i386/pc/pxe.h: Likewise.
42493
42494
2008-08-05  Bean  <bean123ch@gmail.com>
42495
42496
	* util/console.c (grub_console_cur_color): New variable.
42497
	(grub_console_standard_color): Likewise.
42498
	(grub_console_normal_color): Likewise.
42499
	(grub_console_highlight_color): Likewise.
42500
	(color_map): Likewise.
42501
	(use_color): Likewise.
42502
	(NUM_COLORS): New macro.
42503
	(grub_ncurses_setcolorstate): Handle color properly.
42504
	(grub_ncurses_setcolor): Don't change color here, just remember the
42505
	settings, color will be set in grub_ncurses_setcolorstate.
42506
	(grub_ncurses_getcolor): New function.
42507
	(grub_ncurses_init): Initialize color pairs.
42508
	(grub_ncurses_term): New member grub_ncurses_getcolor.
42509
42510
2008-08-05  Colin D Bennett  <colin@gibibit.com>
42511
42512
	High resolution timer support.  Implemented for x86 CPUs using TSC.
42513
	Extracted generic grub_millisleep() so it's linked in only as needed.
42514
	This requires a Pentium compatible CPU; if the RDTSC instruction is
42515
	not supported, then it falls back on the generic grub_get_time_ms()
42516
	implementation that uses the machine's RTC.
42517
42518
	* conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/time.c',
42519
	`kern/i386/tsc.c', `kern/generic/rtc_get_time_ms.c' and
42520
	`kern/generic/millisleep.c'.
42521
42522
	* conf/i386-efi.rmk (kernel_mod_SOURCES): Add `kern/i386/tsc.c',
42523
	`kern/generic/rtc_get_time_ms.c' and `kern/generic/millisleep.c'.
42524
42525
	* conf/x86_64-efi.rml (kernel_mod_SOURCES): Add
42526
	`kern/generic/millisleep.c' and `kern/generic/rtc_get_time_ms.c'.
42527
42528
	* conf/sparc64-ieee1275.rmk (kernel_elf_SOURCES): Likewise.
42529
42530
	* conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add
42531
	`kern/generic/millisleep.c'.
42532
42533
	* conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Likewise.
42534
42535
	* conf/i386-coreboot.rmk (kernel_elf_SOURCES): Add `kern/time.c'.
42536
42537
	* kern/generic/rtc_get_time_ms.c: New file.
42538
42539
	* kern/generic/millisleep.c: New file.
42540
42541
	* kern/misc.c: Don't include
42542
	<kern/time.h> anymore.
42543
	(grub_millisleep_generic): Removed.
42544
42545
	* commands/sleep.c (grub_interruptible_millisleep): Uses
42546
	grub_get_time_ms() instead of grub_get_rtc().
42547
42548
	* include/grub/i386/tsc.h (grub_get_tsc): New file.  New inline
42549
	function.
42550
	(grub_cpu_is_cpuid_supported): New inline function.
42551
	(grub_cpu_is_tsc_supported): New inline function.
42552
	(grub_tsc_init): New function prototype.
42553
	(grub_tsc_get_time_ms): New function prototype.
42554
42555
	* kern/i386/tsc.c (grub_get_time_ms): New file.
42556
42557
	* include/grub/time.h: Include <grub/types.h.
42558
	(grub_millisleep_generic): Removed.
42559
	(grub_get_time_ms): New prototype.
42560
	(grub_install_get_time_ms): New prototype.
42561
	(grub_rtc_get_time_ms): New prototype.
42562
42563
	* kern/time.c (grub_get_time_ms): New function.
42564
	(grub_install_get_time_ms): New function.
42565
42566
	* kern/i386/efi/init.c: Include <grub/cpu/tsc.h>.  Don't include
42567
	<grub/time.h> anymore.
42568
	(grub_millisleep): Removed.
42569
	(grub_machine_init): Call grub_tsc_init.
42570
42571
	* kern/i386/linuxbios/init.c (grub_machine_init): Install the RTC
42572
	get_time_ms() implementation.
42573
42574
	* kern/sparc64/ieee1275/init.c (grub_millisleep): Removed.
42575
	(ieee1275_get_time_ms): New function.
42576
	(grub_machine_init): Install get_time_ms() implementation.
42577
42578
	* kern/i386/pc/init.c: Include <grub/cpu/tsc.h>.
42579
	(grub_machine_init): Call grub_tsc_init().
42580
	(grub_millisleep): Removed.
42581
42582
	* kern/ieee1275/init.c (grub_millisleep): Removed.
42583
	(grub_machine_init): Install ieee1275_get_time_ms()
42584
	implementation.
42585
	(ieee1275_get_time_ms): New function.
42586
	(grub_get_rtc): Now calls ieee1275_get_time_ms(), which does the
42587
	real work.
42588
42589
2008-08-05  Marco Gerards  <marco@gnu.org>
42590
42591
	* disk/ata.c: Include <grub/pci.h>.
42592
	(enum grub_ata_commands): Add `GRUB_ATA_CMD_EXEC_DEV_DIAGNOSTICS'.
42593
	(grub_ata_initialize): Rewritten.
42594
	(grub_ata_device_initialize): New function.
42595
42596
2008-08-04  Pavel Roskin  <proski@gnu.org>
42597
42598
	* kern/main.c: Include grub/mm.h.
42599
42600
2008-08-04  Robert Millan  <rmh@aybabtu.com>
42601
42602
	* conf/i386-coreboot.rmk (COMMON_ASFLAGS, COMMON_CFLAGS)
42603
	(COMMON_LDFLAGS): Harmonize with i386-pc version (fixes a code
42604
	corruption problem).
42605
42606
2008-08-04  Robert Millan  <rmh@aybabtu.com>
42607
42608
	* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Fix misc
42609
	warnings introduced in my last commit.
42610
42611
2008-08-03  Robert Millan  <rmh@aybabtu.com>
42612
42613
	Make PCI available on all i386 architectures.
42614
42615
	* include/grub/i386/pc/pci.h: Move from here ...
42616
	* include/grub/i386/pci.h: ... to here.
42617
42618
	* include/grub/i386/pc/pci.h: Remove.
42619
	* include/grub/i386/efi/pci.h: Remove.
42620
	* include/grub/x86_64/efi/pci.h: Remove.
42621
42622
	* include/grub/pci.h: Replace `<grub/machine/pci.h>' with
42623
	`<grub/cpu/pci.h>'.
42624
42625
	* conf/i386-coreboot.rmk (pkglib_MODULES): Add `pci' and `lspci'.
42626
	(pci_mod_SOURCES, pci_mod_CFLAGS, pci_mod_LDFLAGS, lspci_mod_SOURCES)
42627
	(lspci_mod_CFLAGS, lspci_mod_LDFLAGS): New variables.
42628
42629
	* conf/i386-ieee1275.rmk: Likewise.
42630
42631
2008-08-03  Robert Millan  <rmh@aybabtu.com>
42632
42633
	* term/i386/pc/vga_text.c (CRTC_CURSOR_DISABLE): New macro.
42634
	(grub_console_setcursor): Make it possible to set cursor off.
42635
42636
2008-08-03  Robert Millan  <rmh@aybabtu.com>
42637
42638
	* util/grub.d/00_header.in: Be platform-agnostic.  Probe for existence
42639
	of modules instead of assuming which platform provides what.
42640
	* util/update-grub.in: Likewise.
42641
42642
2008-08-03  Robert Millan  <rmh@aybabtu.com>
42643
42644
	* kern/i386/pc/init.c (make_install_device): Check for `grub_prefix'
42645
	instead of `grub_install_dos_part' to determine whether a drive needs
42646
	to be prepended to prefix (`grub_install_dos_part' is not reliable,
42647
	because it can be overridden when loading GRUB via Multiboot).
42648
42649
2008-08-02  Robert Millan  <rmh@aybabtu.com>
42650
42651
	* util/i386/pc/grub-install.in: Remove trailing slash from prefix.
42652
42653
2008-08-02  Robert Millan  <rmh@aybabtu.com>
42654
42655
	* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Add a pair
42656
	of informational grub_dprintf() calls.
42657
42658
2008-08-02  Robert Millan  <rmh@aybabtu.com>
42659
42660
	* disk/memdisk.c (memdisk_size): Don't initialize.
42661
	(GRUB_MOD_INIT(memdisk)): Find memdisk using grub_module_iterate().
42662
42663
	* include/grub/i386/pc/kernel.h
42664
	(GRUB_KERNEL_MACHINE_MEMDISK_IMAGE_SIZE): Remove macro.
42665
	(GRUB_KERNEL_MACHINE_PREFIX, GRUB_KERNEL_MACHINE_DATA_END): Shift.
42666
	(grub_memdisk_image_size, grub_arch_memdisk_addr)
42667
	(grub_arch_memdisk_size): Remove.
42668
42669
	* include/grub/kernel.h (struct grub_module_header): Remove `offset'
42670
	field (was only used to transfer a constant).  Add `type' field to
42671
	support multiple module types.
42672
	(grub_module_iterate): New function.
42673
42674
	* kern/device.c (grub_device_open): Do not hide error messages
42675
	when grub_disk_open() fails.  Use grub_print_error() instead.
42676
42677
	* kern/i386/pc/init.c (grub_arch_modules_addr)
42678
	(grub_arch_memdisk_size): Remove functions.
42679
	(grub_arch_modules_addr): Return the module address in high memory
42680
	(now that it isn't copied anymore).
42681
42682
	* kern/i386/pc/startup.S (grub_memdisk_image_size): Remove variable.
42683
	(codestart): Don't add grub_memdisk_image_size to %ecx in LZMA
42684
	decompression routine (grub_total_module_size already includes that
42685
	now).  Don't copy modules back to low memory.
42686
42687
	* kern/main.c: Include `<grub/mm.h>'.
42688
	(grub_load_modules): Split out (and use) ...
42689
	(grub_module_iterate): ... this function, which iterates through
42690
	module objects and runs a hook.
42691
	Comment out grub_mm_init_region() call, as it would cause non-ELF
42692
	modules to be overwritten.
42693
42694
	* util/i386/pc/grub-mkimage.c (generate_image): Instead of appending
42695
	the memdisk image in its own region, make it part of the module list.
42696
	* util/elf/grub-mkimage.c (options): Add "memdisk"|'m' option.
42697
	(main): Parse --memdisk|-m option, and pass user-provided path as
42698
	parameter to generate_image().
42699
	(add_segments): Pass `memdisk_path' down to load_modules().
42700
	(load_modules): Embed memdisk image in module section when requested.
42701
	* util/i386/efi/grub-mkimage.c (make_mods_section): Initialize
42702
	`header.type' instead of `header.offset'.
42703
42704
	* conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add `memdisk.mod'.
42705
	(memdisk_mod_SOURCES, memdisk_mod_CFLAGS)
42706
	(memdisk_mod_LDFLAGS): New variables.
42707
	* conf/i386-coreboot.rmk: Likewise.
42708
	* conf/i386-ieee1275.rmk: Likewise.
42709
42710
2008-08-02  Robert Millan  <rmh@aybabtu.com>
42711
42712
	* loader/i386/pc/multiboot.c (playground, forward_relocator)
42713
	(backward_relocator): New variables.  Used to allocate and relocate
42714
	the payload, respectively.
42715
	(grub_multiboot_load_elf32): Load into heap instead of requested
42716
	address, install the appropriate relocator code in each bound of
42717
	the payload, and set the entry point such that
42718
	grub_multiboot_real_boot() will jump to one of them.
42719
42720
	* kern/i386/loader.S (grub_multiboot_payload_size)
42721
	(grub_multiboot_payload_orig, grub_multiboot_payload_dest)
42722
	(grub_multiboot_payload_entry_offset): New variables.
42723
	(grub_multiboot_real_boot): Set cpu context to what the relocator
42724
	expects, and jump to the relocator instead of the payload.
42725
42726
	* include/grub/i386/loader.h (grub_multiboot_payload_size)
42727
	(grub_multiboot_payload_orig, grub_multiboot_payload_dest)
42728
	(grub_multiboot_payload_entry_offset): Export.
42729
42730
2008-08-01  Bean  <bean123ch@gmail.com>
42731
42732
	* normal/menu_entry.c (editor_getline): Don't return the original
42733
	string as result, as it will be released by lexer once it has done
42734
	using it.
42735
42736
2008-08-01  Robert Millan  <rmh@aybabtu.com>
42737
42738
	* util/grub.d/10_linux.in: Use prepare_grub_to_access_device() from
42739
	within menuentries, not before them.
42740
	util/grub.d/10_hurd.in: Likewise.
42741
42742
2008-08-01  Bean  <bean123ch@gmail.com>
42743
42744
	* conf/common.rmk (pkglib_MODULES): Add bufio.mod.
42745
	(bufio_mod_SOURCES): New macro.
42746
	(bufio_mod_CFLAGS): Likewise.
42747
	(bufio_mod_LDFLAGS): Likewise.
42748
42749
	* include/grub/bufio.h: New file.
42750
42751
	* io/bufio.c: Likewise.
42752
42753
	* video/png.c: Replace <grub/file.h> with <grub/bufio.h>.
42754
	(grub_video_reader_png): Use grub_buffile_open to open file.
42755
42756
	* video/jpeg.c: Replace <grub/file.h> with <grub/bufio.h>.
42757
	(grub_video_reader_jpeg): Use grub_buffile_open to open file.
42758
42759
	* video/tga.c: Replace <grub/file.h> with <grub/bufio.h>.
42760
	(grub_video_reader_tga): Use grub_buffile_open to open file.
42761
42762
	* font/manager.c: Include <grub/bufio.h>.
42763
	(add_font): Use grub_buffile_open to open file.
42764
42765
2008-07-31  Robert Millan  <rmh@aybabtu.com>
42766
42767
	* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): When loading
42768
	ELF segments, use a macro for arbitrarily accessing any of them instead
42769
	of preparing a pointer that allows access to one at a time.
42770
	(grub_multiboot_load_elf64): Likewise.
42771
42772
2008-07-31  Bean  <bean123ch@gmail.com>
42773
42774
	* boot/i386/pc/lnxboot.S (real_code_2): Replace 0x50 with
42775
	GRUB_KERNEL_MACHINE_DATA_END.
42776
42777
2008-07-30  Robert Millan  <rmh@aybabtu.com>
42778
42779
	* include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_DATA_END):
42780
	Increase from 0x50 to 0x60.
42781
	* util/i386/pc/grub-install.in: Detect cross-disk installs, and
42782
	use UUIDs to identify the root drive for them.  If that's not
42783
	possible, abort.
42784
	* util/i386/pc/grub-setup.c (setup): Do not special-case, or even
42785
	check, for cross-disk installs.
42786
42787
2008-07-30  Robert Millan  <rmh@aybabtu.com>
42788
42789
	* kern/ieee1275/init.c (grub_machine_set_prefix): If `grub_prefix'
42790
	is non-empty, use it to set the `prefix' environment variable instead
42791
	of the usual approach.
42792
	* kern/i386/linuxbios/init.c (make_install_device): Remove function.
42793
	(grub_machine_set_prefix): Use `grub_prefix' to set the `prefix'
42794
	environment variable instead of dummy make_install_device().
42795
42796
	* kern/i386/ieee1275/startup.S: Include `<grub/machine/kernel.h>'.
42797
	(start): Insert a data section, with `grub_prefix' variable.
42798
	* kern/i386/linuxbios/startup.S: Likewise.
42799
42800
	* include/grub/powerpc/ieee1275/kernel.h [!ASM_FILE] (grub_prefix):
42801
	New variable reference.
42802
	* include/grub/i386/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_PREFIX):
42803
	New macro.  Defines offset of `grub_prefix' within startup.S (relative
42804
	to `start').
42805
	(GRUB_KERNEL_MACHINE_DATA_END): New macro.  Defines the end of data
42806
	section within startup.S (relative to `start').
42807
	* include/grub/i386/coreboot/kernel.h: Likewise.
42808
42809
	* util/elf/grub-mkimage.c (add_segments): Receive `prefix' parameter.
42810
	Overwrite grub_prefix with its contents, at the beginning of the
42811
	first segment.
42812
	(main): Understand -p|--prefix.
42813
42814
2008-07-30  Robert Millan  <rmh@aybabtu.com>
42815
42816
	* util/grub.d/10_hurd.in: Source ${libdir}/grub/update-grub_lib.
42817
42818
2008-07-30  Robert Millan  <rmh@aybabtu.com>
42819
42820
	* term/i386/pc/vga_text.c (grub_console_cls): Use
42821
	grub_console_gotoxy() to go back to beginning of the screen.
42822
	Found by Patrick Georgi <patrick.georgi@coresystems.de>
42823
42824
2008-07-29  Christian Franke  <franke@computer.org>
42825
42826
	* util/update-grub_lib.in (make_system_path_relative_to_its_root):
42827
	Add conversion of emulated mount points on Cygwin.
42828
42829
2008-07-29  Christian Franke  <franke@computer.org>
42830
42831
	* util/update-grub.in: Add a check for admin
42832
	group on Cygwin.
42833
	Remove old `grub.cfg.new' before creation.
42834
	Add `-f' to `mv' to handle the different filesystem
42835
	semantics of Windows.
42836
42837
2008-07-29  Bean  <bean123ch@gmail.com>
42838
42839
	* normal/main.c (get_line): Fix buffer overflow bug.
42840
42841
2008-07-28  Robert Millan  <rmh@aybabtu.com>
42842
42843
	* partmap/apple.c (GRUB_APPLE_HEADER_MAGIC): New macro.
42844
	(struct grub_apple_header): New struct.  Describes the layout of
42845
	the partmap header.
42846
	(apple_partition_map_iterate): Check the header magic as well as the
42847
	partition magic (which was already being checked).
42848
42849
2008-07-28  Pavel Roskin  <proski@gnu.org>
42850
42851
	* genmk.rb: Add a warning to the beginning of the output that
42852
	it's a generated file and should not be edited.
42853
42854
2008-07-28  Robert Millan  <rmh@aybabtu.com>
42855
42856
	* disk/raid.c (grub_raid_scan_device): Do not abort when two disks
42857
	with the same number are found, just use issue a warning with
42858
	grub_dprintf(), as this error has been reported to be non-fatal.
42859
42860
2008-07-27  Robert Millan  <rmh@aybabtu.com>
42861
42862
	* disk/ata.c (grub_ata_dumpinfo): Use grub_dprintf() for debugging
42863
	information.
42864
42865
2008-07-27  Bean  <bean123ch@gmail.com>
42866
42867
	* fs/fat.c (GRUB_FAT_MAXFILE): New constant.
42868
	(grub_fat_find_dir): Ignore case when comparing filename.
42869
42870
2008-07-27  Bean  <bean123ch@gmail.com>
42871
42872
	* fs/xfs.c (grub_xfs_dir_header): Change field i8count back to
42873
	smallino, as it's more descriptive, and i8count can be confused with
42874
	the other field count.
42875
	(grub_xfs_iterate_dir): Adjust grub_xfs_dir_entry pointer for small
42876
	inode type.
42877
42878
2008-07-27  Bean  <bean123ch@gmail.com>
42879
42880
	* commands/crc.c: New file.
42881
42882
	* lib/crc.c: Likewise.
42883
42884
	* include/grub/lib/crc.h: Likewise.
42885
42886
	* util/grub-fstest.c: grub/hexdump.h => grub/lib/hexdump.h.
42887
42888
	* commands/hexdump.c: grub/hexdump.h => grub/lib/hexdump.h.
42889
	(hexdump): Move this function to ...
42890
42891
	* lib/hexdump.c: ... here.
42892
42893
	* include/grub/hexdump.h: Renamed to ...
42894
42895
	* include/grub/lib/hexdump.h: ... this.
42896
42897
	* commands/loadenv.c: grub/envblk.h => grub/lib/envblk.h
42898
42899
	* util/grub-editenv.c: Likewise.
42900
42901
	* include/envblk.h: Renamed to ...
42902
42903
	* include/lib/envblk.h: ... this.
42904
42905
	* util/envblk.c: Renamed to ...
42906
42907
	* lib/envblk.c: ... this.
42908
42909
	* conf/common.rmk (grub_fstest_SOURCES): commands/hexdump.c =>
42910
	lib/hexdump.c.
42911
	(grub_editenv_SOURCES): util/envblk.c => lib/envblk.c
42912
	(pkglib_MODULES): Add crc.mod.
42913
	(hexdump_mod_SOURCES): Add lib/hexdump.c.
42914
	(loadenv_mod_SOURCES): util/envblk.c => lib/envblk.c.
42915
	(crc_mod_SOURCES): New macro.
42916
	(crc_mod_CFLAGS): Likewise.
42917
	(crc_mod_LDFLAGS): Likewise.
42918
42919
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add lib/hexdump.c.
42920
42921
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
42922
42923
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
42924
42925
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
42926
42927
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
42928
42929
2008-07-27  Felix Zielcke  <fzielcke@z-51.de>
42930
42931
	* commands/help.c: Include <grub/term.h>.
42932
	(TERM_WIDTH): Removed.  Updated all users.
42933
42934
2008-07-27  Pavel Roskin  <proski@gnu.org>
42935
42936
	* util/getroot.c (find_root_device): Rephrase a comment to avoid
42937
	spurious warnings about a comment within a comment.
42938
42939
2008-07-25  Robert Millan  <rmh@aybabtu.com>
42940
42941
	* util/getroot.c (find_root_device): Skip devices that match
42942
	/dev/dm-[0-9].  This lets the real device be found for any type of
42943
	abstraction (LVM, EVMS, RAID..).
42944
	(grub_guess_root_device): Do not traverse /dev/mapper (for LVM)
42945
	and /dev/evms (for EVMS) before traversing /dev.  If a /dev/dm-[0-9]
42946
	device is found first, find_root_device() will now skip it.
42947
42948
2008-07-24  Pavel Roskin  <proski@gnu.org>
42949
42950
	* include/grub/types.h: Use __builtin_bswap32() and
42951
	__builtin_bswap64() with gcc 4.3 and newer.
42952
42953
2008-07-24  Christian Franke  <franke@computer.org>
42954
42955
	* util/i386/pc/grub-install.in: If `--debug' is specified,
42956
	pass `--verbose' to grub-setup.
42957
	Abort script if make_system_path_relative_to_its_root() fails.
42958
42959
2008-07-24  Bean  <bean123ch@gmail.com>
42960
42961
	* configure.ac: Fixed a bug caused by the previous cygwin patch,
42962
	variable `target_platform' should be `platform'.
42963
42964
2008-07-24  Bean  <bean123ch@gmail.com>
42965
42966
	* video/reader/png.c (DEFLATE_HLIT_MAX): Change value.
42967
	(grub_png_init_fixed_block): New function.
42968
	(grub_png_decode_image_data): Handle fixed huffman code compression.
42969
42970
2008-07-24  Bean  <bean123ch@gmail.com>
42971
42972
	* common.rmk (bin_UTILITIES): Add grub-pe2elf.
42973
	(grub_pe2elf_SOURCES): New macro.
42974
	(CLEANFILES): Add grub-pe2elf.
42975
42976
	* include/grub/efi/pe32.h (GRUB_PE32_SCN_ALIGN_1BYTES): New constant.
42977
	(GRUB_PE32_SCN_ALIGN_2BYTES): Likewise.
42978
	(GRUB_PE32_SCN_ALIGN_4BYTES): Likewise.
42979
	(GRUB_PE32_SCN_ALIGN_8BYTES): Likewise.
42980
	(GRUB_PE32_SCN_ALIGN_16BYTES): Likewise.
42981
	(GRUB_PE32_SCN_ALIGN_32BYTES): Likewise.
42982
	(GRUB_PE32_SCN_ALIGN_64BYTES): Likewise.
42983
	(GRUB_PE32_SCN_ALIGN_SHIFT): Likewise.
42984
	(GRUB_PE32_SCN_ALIGN_MASK): Likewise.
42985
	(GRUB_PE32_SYM_CLASS_EXTERNAL): Likewise.
42986
	(GRUB_PE32_SYM_CLASS_STATIC): Likewise.
42987
	(GRUB_PE32_SYM_CLASS_FILE): Likewise.
42988
	(GRUB_PE32_DT_FUNCTION): Likewise.
42989
	(GRUB_PE32_REL_I386_DIR32): Likewise.
42990
	(GRUB_PE32_REL_I386_REL32): Likewise.
42991
	(grub_pe32_symbol): New structure.
42992
	(grub_pe32_reloc): Likewise.
42993
42994
	* util/grub-pe2elf.c: New file.
42995
42996
	* configure.ac: Set TARGET_OBJ2ELF if host os is cygwin. Don't test for
42997
	start symbol in non pc platform.
42998
42999
	* genmk.rb: Use TARGET_OBJ2ELF to convert native object format to elf.
43000
43001
	The following patches are from Christian Franke.
43002
43003
	* include/grub/dl.h: Remove .previous, gas supports this only
43004
	for ELF format.
43005
43006
	* include/grub/symbol.h [__CYGWIN__] (#define FUNCTION/VARIABLE):
43007
	Remove .type, gas supports this only for ELF format.
43008
43009
	* kern/dl.c (grub_dl_resolve_dependencies): Add check for trailing
43010
	nullbytes in symbol table. This fixes an infinite loop if table is
43011
	zero filled.
43012
43013
	* Makefile.in: Add autoconf replacements TARGET_IMG_LDSCRIPT,
43014
	TARGET_IMG_LDFLAGS and EXEEXT.
43015
43016
	* aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): Replace -Wl,-N by
43017
	TARGET_IMG_LDFLAGS_AC.
43018
	(grub_CHECK_STACK_ARG_PROBE): New function.
43019
43020
	* conf/i386-pc.rmk: Replace -Wl,-N by TARGET_IMG_LDFLAGS.
43021
43022
	* conf/i386-pc-cygwin-ld-img.sc: New linker script.
43023
43024
	* configure.ac: Add check for linker script "conf/${target}-img-ld.c"
43025
	to set TARGET_IMG_LD* accordingly.
43026
	Add check for Cygwin to set TARGET_MOD_OBJCOPY accordingly.
43027
	Add call to grub_CHECK_STACK_ARG_PROBE.
43028
	Use TARGET_IMG_LDFLAGS to check start, bss_start, end symbols.
43029
43030
	* genkernsyms.sh.in: Handle HAVE_ASM_USCORE case.
43031
43032
	* genmk.rb: Add EXEEXT to CLEANFILES.
43033
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
43034
2008-07-23  Robert Millan  <rmh@aybabtu.com>
43035
43036
	* Makefile.in (UNICODE_ARROWS, UNICODE_LINES): New variables (they
43037
	define the codes for arrows and lines used for the menu).
43038
	(ascii.pff): Generate fonts for $(UNICODE_ARROWS) and $(UNICODE_LINES)
43039
	as well.
43040
43041
	* util/update-grub_lib.in (font_path): Prefer ascii.pff over complete
43042
	fonts, because the latter are too slow.
43043
43044
2008-07-21  Bean  <bean123ch@gmail.com>
43045
43046
	* kern/i386/pc/startup.S (gate_a20_try_bios): Change test order for
43047
	a20. Run keyboard test last, as it will cause macbook to halt.
43048
43049
2008-07-18  Pavel Roskin  <proski@gnu.org>
43050
43051
	* kern/dl.c: Go back to using GRUB_CPU_SIZEOF_VOID_P.  We cannot
43052
	load foreign architecture modules correctly anyway.  Keep
43053
	support for loading host architecture modules, whether we
43054
	compile them or not.
43055
43056
2008-07-17  Pavel Roskin  <proski@gnu.org>
43057
43058
	* configure.ac: Use -m32 or -m64 regardless of whether we had to
43059
	change target_cpu.  The compiler default can mismatch target_cpu
43060
	in any case.
43061
43062
	* disk/efi/efidisk.c: Fix format warnings on x86_64.
43063
	* kern/efi/efi.c: Likewise.
43064
43065
	* aclocal.m4 (grub_PROG_TARGET_CC): New macro.  Check if the
43066
	target compiler is functional.
43067
	* configure.ac: Call grub_PROG_TARGET_CC once all target flags
43068
	are set up.
43069
43070
	* configure.ac: Default to efi platform for x86_64-apple.  Allow
43071
	powerpc64 CPU, default to ieee1275 platform for it.  Split CPU
43072
	adjustments from the rest, only do them if target is not
43073
	explicitly given.  Merge other adjustments with the final sanity
43074
	check.  Remove an extraneous check for supported CPU.  Be
43075
	specific which CPU and which platform is not supported.
43076
43077
	* configure.ac: Default to pc platform for x86_64.
43078
43079
2008-07-17  Robert Millan  <rmh@aybabtu.com>
43080
43081
	Partial LinuxBIOS -> Coreboot rename.
43082
43083
	* conf/i386-linuxbios.rmk: Renamed to ...
43084
	* conf/i386-coreboot.rmk: ... this.
43085
	* Makefile.in (RMKFILES): s/i386-linuxbios.rmk/i386-coreboot.rmk/g.
43086
	* configure.ac: Accept "coreboot" as input platform (but maintain
43087
	compatibility with "linuxbios").
43088
	* include/grub/i386/linuxbios: Renamed to ...
43089
	* include/grub/i386/coreboot: ... this.
43090
43091
2008-07-17  Bean  <bean123ch@gmail.com>
43092
43093
	* conf/i386/efi.rmk (pkglib_MODULES): add pci.mod and lspci.mod.
43094
	(appleldr_mod_SOURCE): New variable.
43095
	(appleldr_mod_CFLAGS): Likewise.
43096
	(appleldr_mod_LDFLAGS): Likewise.
43097
	(pci_mod_SOURCES): Likewise.
43098
	(pci_mod_CFLAGS): Likewise.
43099
	(pci_mod_LDFLAGS): Likewise.
43100
	(lspci_mod_SOURCES): Likewise.
43101
	(lspci_mod_CFLAGS): Likewise.
43102
	(lspci_mod_LDFLAGS): Likewise.
43103
43104
	* conf/x86_64-efi.rmk: New file.
43105
43106
	* disk/efi/efidisk.c (grub_efidisk_read): Wrap efi calls with efi_call_N
43107
	macro.
43108
	(grub_efidisk_write): Likewise.
43109
43110
	* include/efi/api.h (efi_call_0): New macro.
43111
	(efi_call_1): Likewise.
43112
	(efi_call_2): Likewise.
43113
	(efi_call_3): Likewise.
43114
	(efi_call_4): Likewise.
43115
	(efi_call_5): Likewise.
43116
	(efi_call_6): Likewise.
43117
43118
	* include/grub/efi/chainloader.h (grub_chainloader_cmd): Rename to
43119
	grub_rescue_cmd_chainloader.
43120
43121
	* include/grub/efi/pe32.h (GRUB_PE32_MACHINE_X86_64): New macro.
43122
	(grub_pe32_optional_header): Change some fields based on i386 or
43123
	x86_64 platform.
43124
	(GRUB_PE32_PE32_MAGIC): Likewise.
43125
43126
	* include/grub/efi/uga_draw.h: New file.
43127
43128
	* include/grub/elf.h (STN_ABS): New constant.
43129
	(R_X86_64_NONE): Relocation constant for x86_64.
43130
	(R_X86_64_64): Likewise.
43131
	(R_X86_64_PC32): Likewise.
43132
	(R_X86_64_GOT32): Likewise.
43133
	(R_X86_64_PLT32): Likewise.
43134
	(R_X86_64_COPY): Likewise.
43135
	(R_X86_64_GLOB_DAT): Likewise.
43136
	(R_X86_64_JUMP_SLOT): Likewise.
43137
	(R_X86_64_RELATIVE): Likewise.
43138
	(R_X86_64_GOTPCREL): Likewise.
43139
	(R_X86_64_32): Likewise.
43140
	(R_X86_64_32S): Likewise.
43141
	(R_X86_64_16): Likewise.
43142
	(R_X86_64_PC16): Likewise.
43143
	(R_X86_64_8): Likewise.
43144
	(R_X86_64_PC8): Likewise.
43145
43146
	* include/grub/i386/efi/pci.h: New file.
43147
43148
	* include/grub/i386/linux.h (GRUB_LINUX_EFI_SIGNATURE):
43149
	Change it value based on platform.
43150
	(GRUB_LINUX_EFI_SIGNATURE_0204): New constant.
43151
	(GRUB_E820_RAM): Likewise.
43152
	(GRUB_E820_RESERVED): Likewise.
43153
	(GRUB_E820_ACPI): Likewise.
43154
	(GRUB_E820_NVS): Likewise.
43155
	(GRUB_E820_EXEC_CODE): Likewise.
43156
	(GRUB_E820_MAX_ENTRY): Likewise.
43157
	(grub_e820_mmap): New structure.
43158
	(linux_kernel_header): Change the efi field according to different
43159
	kernel version, also field from linux_kernel_header.
43160
43161
	* include/grub/kernel.h (grub_module_info): Add padding for x86_64.
43162
43163
	* include/grub/pci.h (GRUB_PCI_ADDR_SPACE_MASK): New constant.
43164
	(GRUB_PCI_ADDR_SPACE_MEMORY): Likewise.
43165
	(GRUB_PCI_ADDR_SPACE_IO): Likewise.
43166
	(GRUB_PCI_ADDR_MEM_TYPE_MASK): Likewise.
43167
	(GRUB_PCI_ADDR_MEM_TYPE_32): Likewise.
43168
	(GRUB_PCI_ADDR_MEM_TYPE_1M): Likewise.
43169
	(GRUB_PCI_ADDR_MEM_TYPE_64): Likewise.
43170
	(GRUB_PCI_ADDR_MEM_PREFETCH): Likewise.
43171
	(GRUB_PCI_ADDR_MEM_MASK): Likewise.
43172
	(GRUB_PCI_ADDR_IO_MASK): Likewise.
43173
43174
	* include/grub/x86_64/efi/kernel.h: New file.
43175
43176
	* include/grub/x86_64/efi/loader.h: Likewise.
43177
43178
	* include/grub/x86_64/efi/machine.h: Likewise.
43179
43180
	* include/grub/x86_64/efi/pci.h: Likewise.
43181
43182
	* include/grub/x86_64/efi/time.h: Likewise.
43183
43184
	* include/grub/x86_64/linux.h: Likewise.
43185
43186
	* include/grub/x86_64/setjmp.h: Likewise.
43187
43188
	* include/grub/x86_64/time.h: Likewise.
43189
43190
	* include/grub/x86_64/types.h: Likewise.
43191
43192
	* kern/dl.c (GRUB_CPU_SIZEOF_VOID_P): Changed to
43193
	 GRUB_TARGET_SIZEOF_VOID_P.
43194
43195
	* kern/efi/efi.c (grub_efi_locate_protocol): Wrap efi calls.
43196
	(grub_efi_locate_handle): Likewise.
43197
	(grub_efi_open_protocol): Likewise.
43198
	(grub_efi_set_text_mode): Likewise.
43199
	(grub_efi_stall): Likewise.
43200
	(grub_exit): Likewise.
43201
	(grub_reboot): Likewise.
43202
	(grub_halt): Likewise.
43203
	(grub_efi_exit_boot_services): Likewise.
43204
	(grub_get_rtc): Likewise.
43205
43206
	* kern/efi/mm.c (MEMORY_MAP_SIZE): Change to 0x3000 for new models.
43207
	(GRUB_CPU_SIZEOF_VOID_P): Changed to GRUB_TARGET_SIZEOF_VOID_P.
43208
	(grub_efi_allocate_pages): Wrap efi calls.
43209
	(grub_efi_free_pages): Wrap efi calls.
43210
	(grub_efi_get_memory_map): Wrap efi calls.
43211
43212
	* kern/x86_64/dl.c: New file.
43213
43214
	* kern/x86_64/efi/callwrap.S: Likewise.
43215
43216
	* kern/x86_64/efi/startup.S: Likewise.
43217
43218
	* loader/efi/appleloader.c: Likewise.
43219
43220
	* loader/efi/chainloader.c (cmdline): New variable.
43221
	(grub_chainloader_unload): Wrap efi calls.
43222
	(grub_chainloader_boot): Likewise.
43223
	(grub_rescue_cmd_chainloader): Wrap efi calls, handle
43224
	command line.
43225
43226
	* loader/efi/chainloader_normal.c (chainloader_command):
43227
	Change grub_chainloader_cmd to grub_rescue_cmd_chainloader, pass
43228
	command line.
43229
43230
	* loader/i386/efi/linux.c (allocate_pages): Change allocation
43231
	method.
43232
	(grub_e820_add_region): New function.
43233
	(grub_linux_boot): Construct e820 map from efi map, handle x86_64
43234
	booting.
43235
	(grub_find_video_card): New function.
43236
	(grub_linux_setup_video): New function.
43237
	(grub_rescue_cmd_linux): Probe for video information.
43238
43239
	* normal/x86_64/setjmp.S: New file.
43240
43241
	* term/efi/console.c (map_char): New function.
43242
	(grub_console_putchar): Map unicode char.
43243
	(grub_console_checkkey): Wrap efi calls.
43244
	(grub_console_getkey): Likewise.
43245
	(grub_console_getwh): Likewise.
43246
	(grub_console_gotoxy): Likewise.
43247
	(grub_console_cls): Likewise.
43248
	(grub_console_setcolorstate): Likewise.
43249
	(grub_console_setcursor): Likewise.
43250
43251
	* util/i386/efi/grub-mkimage.c: Add support for x86_64.
43252
43253
2008-07-16  Pavel Roskin  <proski@gnu.org>
43254
43255
	* loader/i386/efi/linux.c (allocate_pages): Fix warnings in
43256
	format strings.
43257
43258
	* util/i386/efi/grub-mkimage.c (get_target_address): Return a
43259
	pointer, not an integer.  This fixes a warning and prevents
43260
	precision loss on 64-bit systems.
43261
	(relocate_addresses): Remove unneeded cast.
43262
43263
2008-07-15  Pavel Roskin  <proski@gnu.org>
43264
43265
	* kern/i386/ieee1275/init.c: Include grub/cache.h.
43266
43267
	* term/ieee1275/ofconsole.c: Disable code unused on i386.
43268
43269
	* kern/ieee1275/ieee1275.c (grub_ieee1275_get_integer_property):
43270
	Fix comparison between signed and unsigned.
43271
43272
	* include/grub/i386/ieee1275/console.h: Declare
43273
	grub_console_init() and grub_console_fini().
43274
43275
	* loader/i386/ieee1275/linux.c (grub_set_bootpath): Remove.
43276
	It's empty and unused.
43277
43278
	* fs/ext2.c (grub_ext2_read_block): Initialize blknr in the
43279
	beginning to avoid warnings with some compilers.
43280
43281
	* loader/ieee1275/multiboot2.c: Include grub/machine/loader.h.
43282
	[__i386__] (grub_mb2_arch_boot): Avoid unnecessary cast.
43283
43284
2008-07-14  Pavel Roskin  <proski@gnu.org>
43285
43286
	* kern/env.c (grub_register_variable_hook): Don't copy empty
43287
	string, it leaks memory.  Pass "" to grub_env_set(), it should
43288
	handle constant strings.
43289
43290
	* commands/blocklist.c (grub_cmd_blocklist): Fix format warning.
43291
	* commands/cmp.c (grub_cmd_cmp): Likewise.
43292
	* kern/dl.c (grub_dl_flush_cache): Likewise.
43293
	(grub_dl_load_core): Likewise.
43294
	* kern/elf.c (grub_elf32_load_phdrs): Likewise.
43295
	(grub_elf64_load_phdrs): Likewise.
43296
43297
2008-07-13  Pavel Roskin  <proski@gnu.org>
43298
43299
	* lib/LzmaEnc.c (LzmaEnc_SetProps): Fix warning about comparison
43300
	between signed and unsigned.
43301
	(LzmaEnc_Finish): Fix warning about an unused parameter.
43302
43303
2008-07-13  Bean  <bean123ch@gmail.com>
43304
43305
	* Makefile.in (enable_lzo): New rule.
43306
43307
	* conf/i386-pc.rmk (grub_mkimage_SOURCES): New test with enable_lzo.
43308
43309
	* configure.ac (ENABLE_LZO): New option --enable-lzo.
43310
43311
	* boot/i386/pc/lnxboot.S: #include <config.h>.
43312
43313
	* include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE): Change
43314
	its value according to the compression algorithm used, lzo or lzma.
43315
43316
	* util/i386/pc/grub-mkimage.c (compress_kernel): Use different
43317
	compression algorithm according to configure macro.
43318
43319
	* kern/i386/pc/startup.S (codestart): Likewise.
43320
43321
	* kern/i386/pc/lzma_decode.S: New file.
43322
43323
	* include/grub/lib/LzFind.h: Likewise.
43324
43325
	* include/grub/lib/LzHash.h: Likewise.
43326
43327
	* include/grub/lib/LzmaDec.h: Likewise.
43328
43329
	* include/grub/lib/LzmaEnc.h: Likewise.
43330
43331
	* include/grub/lib/LzmaTypes.h: Likewise.
43332
43333
	* lib/LzFind.c: Likewise.
43334
43335
	* lib/LzmaDec.c: Likewise.
43336
43337
	* lib/LzmaEnc.c: Likewise.
43338
43339
2008-07-13  Bean  <bean123ch@gmail.com>
43340
43341
	* fs/ext2.c (EXT4_EXTENTS_FLAG): New macro.
43342
	(grub_ext4_extent_header): New structure.
43343
	(grub_ext4_extent): Likewise.
43344
	(grub_ext4_extent_idx): Likewise.
43345
	(grub_ext4_find_leaf): New function.
43346
	(grub_ext2_read_block): Handle extents.
43347
43348
2008-07-12  Robert Millan  <rmh@aybabtu.com>
43349
43350
	* util/i386/pc/grub-mkrescue.in: s/grub-install/grub-mkrescue/g.
43351
43352
2008-07-11  Robert Millan  <rmh@aybabtu.com>
43353
43354
	* util/grub.d/40_custom.in: New file. Example on how to add custom
43355
	entries to /etc/grub.d.
43356
	* conf/common.rmk (%, update-grub_SCRIPTS, CLEANFILES): Install
43357
	40_custom (implicitly, by merging all the grub.d rules).
43358
43359
2008-07-11  Pavel Roskin  <proski@gnu.org>
43360
43361
	* commands/read.c (grub_getline): Fix invalid memory access.
43362
	Don't add newline to the variable value.
43363
43364
	* term/i386/pc/serial.c (GRUB_SERIAL_PORT_NUM): New constant.
43365
	[!GRUB_MACHINE_PCBIOS] (serial_hw_io_addr): Add COM2 and COM3.
43366
	(serial_hw_get_port): Check validity of the port number.
43367
	(grub_cmd_serial): Check return value of serial_hw_get_port().
43368
43369
2008-07-07  Pavel Roskin  <proski@gnu.org>
43370
43371
	* boot/i386/pc/diskboot.S (notification_string): Replace
43372
	"Loading kernel" with just "loading".  This is shorter, less
43373
	confusing and saves a few bytes for possible future changes.
43374
43375
2008-07-05  Pavel Roskin  <proski@gnu.org>
43376
43377
	* disk/ata.c (grub_ata_dumpinfo): Don't output addressing and
43378
	size for ATAPI devices, they are undefined.  Output sector
43379
	number in decimal form.
43380
43381
	* disk/ata.c: Use named constants for status bits.
43382
43383
2008-07-04  Pavel Roskin  <proski@gnu.org>
43384
43385
	* kern/i386/linuxbios/init.c (grub_machine_init): Cast addr to
43386
	grub_addr_t before casting it to the void pointer to fix a
43387
	warning.  Non-addressable regions are discarded earlier.
43388
	(grub_arch_modules_addr): Cast _end to grub_addr_t.
43389
	* kern/i386/linuxbios/table.c: Include grub/misc.h.
43390
	(check_signature): Don't shadow table_header.
43391
	(grub_linuxbios_table_iterate): Cast numeric constants to
43392
	grub_linuxbios_table_header_t.
43393
	* include/grub/i386/linuxbios/init.h: Add noreturn attribute to
43394
	grub_stop().
43395
43396
	* kern/ieee1275/init.c: Cast _start and _end to grub_addr_t to
43397
	prevent warnings.
43398
43399
	* include/grub/misc.h (ALIGN_UP): Avoid unnecessary cast to a
43400
	pointer, which can cause warnings.  Support 64-bit addresses.
43401
43402
	* util/elf/grub-mkimage.c: Use GRUB_TARGET_SIZEOF_LONG instead
43403
	of sizeof(long).  This fixes PowerPC image generation on x86_64.
43404
43405
2008-07-04  Robert Millan  <rmh@aybabtu.com>
43406
43407
	This fixes a performance issue when pc & gpt partmap iterators
43408
	didn't abort iteration even after our hook found what it was
43409
	looking for (often causing expensive probes of non-existent drives).
43410
43411
	Some callers relied on previous buggy behaviour, since they would
1.3.3 by Colin Watson
Import upstream version 1.96+20090523
43412
	raise an error when their own hooks caused early abortion of its
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
43413
	iteration.
43414
43415
	* kern/device.c (grub_device_open): Improve error message.
43416
	* disk/lvm.c (grub_lvm_open): Likewise.
43417
	* disk/raid.c (grub_raid_open): Likewise.
43418
43419
	* partmap/pc.c (pc_partition_map_iterate): Abort parent iteration
43420
	when hook requests it, independently of grub_errno.
43421
	(pc_partition_map_probe): Do not fail when find_func() caused
43422
	early abortion of pc_partition_map_iterate().
43423
43424
	* partmap/gpt.c (gpt_partition_map_iterate): Abort parent iteration
43425
	when hook requests it, independently of grub_errno.
43426
	(gpt_partition_map_probe): Do not fail when find_func() caused
43427
	early abortion of gpt_partition_map_iterate().
43428
43429
	* kern/partition.c (grub_partition_iterate): Abort parent iteration
43430
	when hook requests it, independently of grub_errno.  Do not fail when
43431
	part_map_iterate_hook() caused early abortion of p->iterate().
43432
43433
	* util/biosdisk.c (grub_util_biosdisk_get_grub_dev): Do not fail
43434
	when grub_partition_iterate() returned with non-zero.
43435
43436
2008-07-03  Pavel Roskin  <proski@gnu.org>
43437
43438
	* disk/ata.c (grub_ata_pio_write): Check status before writing,
43439
	like we do in grub_ata_pio_read().
43440
	(grub_ata_readwrite): Always write individual sectors.  Fix the
43441
	sector count for the remainder.
43442
	(grub_ata_write): Enable writing to ATA devices.  Correctly
43443
	report error for ATAPI devices.
43444
43445
2008-07-02  Pavel Roskin  <proski@gnu.org>
43446
43447
	* boot/i386/pc/cdboot.S: Add _start entry to fix a linker
43448
	warning.
43449
43450
	* disk/ata.c (grub_ata_readwrite): Don't increment sector number
43451
	for every read sector, we already increment it for the whole
43452
	batch.  This fixes reading more than 256 sectors at once.
43453
43454
	* util/grub-editenv.c (cmd_info): Cast argument to long
43455
	explicitly.  ptrdiff_t reduces to int on i386.
43456
43457
	* util/grub-editenv.c (main): Be specific which parameter is
43458
	missing.
43459
43460
	* disk/memdisk.c (memdisk_addr): Make a pointer to fix warnings.
43461
	(memdisk): Make memdisk_orig_addr a pointer.
43462
43463
	* fs/reiserfs.c (grub_reiserfs_read): Fix misuse of grub_size_t
43464
	for file offsets, use grub_off_t instead.  Fix printf format
43465
	warnings.
43466
43467
	* fs/reiserfs.c: Remove #warning, TODO list items don't belong
43468
	there.  Real unexpected warnings should not drown in the noise
43469
	about known problems.
43470
43471
	* commands/hexdump.c (grub_cmd_hexdump): Fix misuse of
43472
	grub_disk_addr_t for memory addresses.
43473
43474
	* loader/aout.c (grub_aout_load): Cast load_addr to pointer
43475
	explicitly to fix a warning.
43476
43477
	* util/grub-editenv.c (cmd_info): Fix warning in printf format.
43478
43479
	* Makefile.in (MODULE_LDFLAGS): New variable.
43480
	* aclocal.m4 (grub_PROG_LD_BUILD_ID_NONE): New macro.  Check if
43481
	the linker accepts --build-id=none.
43482
	* configure.ac: Call grub_PROG_LD_BUILD_ID_NONE.  Substitute
43483
	MODULE_LDFLAGS.
43484
	* genmk.rb: Use MODULE_LDFLAGS when linking modules.
43485
43486
	* fs/xfs.c (struct grub_xfs_dir_header): Use names similar to
43487
	those in Linux XFS code.  Provide a way to access 64-bit parent
43488
	inode.
43489
	(grub_xfs_iterate_dir): Use the new names.  Avoid reading past
43490
	the end of struct grub_xfs_dir_header.
43491
43492
2008-07-02  Bean  <bean123ch@gmail.com>
43493
43494
	* include/grub/ieee1275.h (grub_ieee1275_flag): New constant
43495
	GRUB_IEEE1275_FLAG_CANNOT_INTERPRET, GRUB_IEEE1275_FLAG_FORCE_CLAIM
43496
	and GRUB_IEEE1275_FLAG_NO_ANSI.
43497
43498
	* kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set flag
43499
	GRUB_IEEE1275_FLAG_CANNOT_INTERPRET, GRUB_IEEE1275_FLAG_FORCE_CLAIM
43500
	and GRUB_IEEE1275_FLAG_NO_ANSI for Open Hackware.
43501
43502
	* kern/ieee1275/ieee1275.c (grub_ieee1275_interpret): Return
43503
	immediately if GRUB_IEEE1275_FLAG_CANNOT_INTERPRET is set.
43504
43505
	* kern/ieee1275/init.c (grub_claim_heap): Claim memory directly if
43506
	GRUB_IEEE1275_FLAG_FORCE_CLAIM is set.
43507
43508
	* term/ieee1275/ofconsole.c (grub_ofconsole_writeesc): Don't output
43509
	esc sequence on non ANSI terminal.
43510
	(grub_ofconsole_gotoxy): Emulate backspace key on non ANSI terminal.
43511
43512
	* util/elf/grub-mkimage.c (add_segments): Move ELF header to the
43513
	beginning of file.
43514
43515
2008-07-02  Bean  <bean123ch@gmail.com>
43516
43517
	* conf/common.rmk (bin_UTILITIES): Add grub-editenv.
43518
	(grub_editenv_SOURCES): New variable.
43519
	(pkglib_MODULES): Add loadenv.mod.
43520
	(loadenv_mod_SOURCES): New variable.
43521
	(loadenv_mod_CFLAGS): Likewise.
43522
	(loadenv_mod_LDFLAGS): Likewise.
43523
43524
	* include/grub/envblk.h: New file.
43525
43526
	* util/envblk.c: New file.
43527
43528
	* util/grub-editenv.c: New file.
43529
43530
	* commands/loadenv.c: New file.
43531
43532
2008-07-01  Pavel Roskin  <proski@gnu.org>
43533
43534
	* include/multiboot2.h (struct multiboot_tag_module): Use char,
43535
	not unsigned char.  This fixes warnings and is consistent with
43536
	other tags.
43537
43538
	* disk/fs_uuid.c (search_fs_uuid): Correctly increment count.
43539
43540
	* normal/parser.y: Define YYENABLE_NLS as 0 to fix warnings.
43541
43542
	* term/tparm.c (analyze): Always set *popcount.
43543
43544
	* loader/i386/pc/linux.c (grub_rescue_cmd_linux): Remove useless
43545
	cast to fix a warning.
43546
43547
	* loader/i386/pc/multiboot2.c (grub_mb2_arch_module_alloc): Use
43548
	cast to suppress a warning.
43549
43550
	* fs/afs.c (grub_afs_read_block): Return grub_disk_addr_t, as
43551
	grub_fshelp_read_file() expects.
43552
43553
	* fs/fat.c: Fix UUID calculation on big-endian systems.  We
43554
	write uuid as a 32-bit value in CPU byte order, so declare and
43555
	use it as such.
43556
43557
	* disk/raid.c: Cast grub_dprintf() arguments to unsigned long
43558
	long if the format specifier expects it.
43559
	* partmap/gpt.c (gpt_partition_map_iterate): Likewise.
43560
	* partmap/pc.c (pc_partition_map_iterate): Likewise.
43561
	* fs/ntfs.c (grub_ntfs_uuid): Cast data->uuid to unsigned long
43562
	long to fix a warning.
43563
	* fs/reiserfs.c (grub_reiserfs_read): Change casts in
43564
	grub_dprintf() arguments to fix warnings.
43565
43566
2008-06-30  Pavel Roskin  <proski@gnu.org>
43567
43568
	* util/i386/pc/grub-setup.c (setup): Write install_dos_part and
43569
	install_bsd_part immediately before core.img is embedded or
43570
	modified on disk.  This fixes core.img verification if core.img
43571
	cannot be embedded.
43572
43573
	* util/i386/pc/grub-setup.c (setup): Use core_path_dev, not
43574
	core_path to calculate the blocklist.
43575
	Patch from Javier Martín <lordhabbit@gmail.com>
43576
43577
2008-06-29  Robert Millan  <rmh@aybabtu.com>
43578
43579
	* fs/xfs.c (GRUB_XFS_FSB_TO_BLOCK): New macro.  Maps filesystem
43580
	block to disk block.
43581
	(grub_xfs_read_block): Use GRUB_XFS_FSB_TO_BLOCK() on result.
43582
	Patch from Niels Böhm <bitbucket@arcor.de>
43583
43584
2008-06-29  Robert Millan  <rmh@aybabtu.com>
43585
43586
	* util/update-grub_lib.in (font_path): Search for fonts in
43587
	/boot/grub first, which is more likely to be readable (we aren't
43588
	deciding where fonts live, just looking for them).
43589
43590
2008-06-26  Pavel Roskin  <proski@gnu.org>
43591
43592
	* util/biosdisk.c (read_device_map): Don't leave dead map
43593
	entries for devices failing stat() check.
43594
43595
	* util/i386/pc/grub-setup.c (setup): Don't reuse core_path, use
43596
	core_path_dev for the core.img path on the target device.
43597
43598
2008-06-26  Robert Millan  <rmh@aybabtu.com>
43599
43600
	* disk/fs_uuid.c: New file.
43601
	* conf/common.rmk (pkglib_MODULES): Add `fs_uuid.mod'.
43602
	(fs_uuid_mod_SOURCES, fs_uuid_mod_CFLAGS)
43603
	(fs_uuid_mod_LDFLAGS): New variables.
43604
	* include/grub/disk.h (grub_disk_dev_id): Add
43605
	`GRUB_DISK_DEVICE_UUID_ID'.
43606
	* kern/disk.c (grub_disk_dev_iterate): Allow disk devices not to
43607
	implement iterate().
43608
43609
2008-06-26  Robert Millan  <rmh@aybabtu.com>
43610
43611
	* util/grub.d/10_linux.in: Avoid passing UUIDs to Linux when either
43612
	"/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" does not exist, or when a
43613
	Linux image includes no initrd.
43614
43615
2008-06-21  Javier Martín  <lordhabbit@gmail.com>
43616
43617
	* util/i386/pc/grub-setup.c (setup): Remove literal "core.img" in a
43618
	call to resolve the core image location that effectively appended the
43619
	name twice.
43620
43621
2008-06-21  Robert Millan  <rmh@aybabtu.com>
43622
43623
	* util/grub.d/00_header.in: Move last prepare_grub_to_access_device()
43624
	call from here ...
43625
43626
	* util/grub.d/10_hurd.in: ... to here ...
43627
	* util/grub.d/10_linux.in: ... and here.
43628
43629
2008-06-19  Robert Millan  <rmh@aybabtu.com>
43630
43631
	* kern/main.c (grub_main): Export `prefix' variable immediately
43632
	after it has been set by grub_machine_set_prefix().
43633
43634
2008-06-19  Robert Millan  <rmh@aybabtu.com>
43635
43636
	* commands/search.c (search_label, search_fs_uuid, search_file): Print
43637
	search result when not saving to variable, not the other way around.
43638
	When saving to variable, abort iteration as soon as a match is found.
43639
43640
2008-06-19  Robert Millan  <rmh@aybabtu.com>
43641
43642
	* util/update-grub_lib.in (prepare_grub_to_access_device): Remove
43643
	check for partition that provides /boot/grub.  Its logic is flawed,
43644
	as it prevents prepare_grub_to_access_device() from being called
43645
	multiple times.
43646
43647
2008-06-19  Robert Millan  <rmh@aybabtu.com>
43648
43649
	* util/update-grub_lib.in (prepare_grub_to_access_device): Issue
43650
	"insmod" command directly when abstraction modules are needed,
43651
	instead of relying on GRUB_PRELOAD_MODULES (which had no effect
43652
	since it had already been processed).
43653
43654
2008-06-19  Pavel Roskin  <proski@gnu.org>
43655
43656
	* conf/i386-efi.rmk: Recompile grub-mkimage.c if Makefile has
43657
	changed.  This is needed in case GRUB_LIBDIR changes.
43658
	* conf/i386-ieee1275.rmk: Likewise.
43659
	* conf/i386-linuxbios.rmk: Likewise.
43660
	* conf/i386-pc.rmk: Likewise.
43661
	* conf/powerpc-ieee1275.rmk: Likewise.
43662
43663
2008-06-18  Pavel Roskin  <proski@gnu.org>
43664
43665
	* conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Rename
43666
	kernel_elf_symlist.c to symlist.c for consistency with other
43667
	architectures.  Update all users.
43668
	* conf/sparc64-ieee1275.rmk (kernel_elf_SOURCES): Likewise.
43669
43670
2008-06-18  Robert Millan  <rmh@aybabtu.com>
43671
43672
	* util/i386/pc/grub-install.in: If the drive is LVM or RAID, prepend
43673
	it in prefix.
43674
43675
	* util/i386/pc/grub-setup.c (main): Don't handle prefix at all.  Set
43676
	`must_embed' to 1 when root_dev is a RAID device.  When dest_dev is
43677
	a RAID device, run setup() for all members independently on whether
43678
	LVM abstraction is being used.
43679
	(setup): Don't handle prefix at all; let grub-mkimage take care of it.
43680
	If grub-mkimage has set `*install_dos_part == -2', don't override this
43681
	value.
43682
	Perform *install_dos_part adjustments independently on whether
43683
	we're embedding or not.
43684
	Clarify error message when image is too big for embedding.
43685
	Remove duplicate *install_dos_part stanza.
43686
43687
2008-06-17  Robert Millan  <rmh@aybabtu.com>
43688
43689
	* term/ieee1275/ofconsole.c (fgcolor, bgcolor): Remove variables.
43690
	(grub_ofconsole_normal_color, grub_ofconsole_highlight_color): New
43691
	variables.
43692
	(grub_ofconsole_setcolor, grub_ofconsole_getcolor): Load/store
43693
	values in grub_ofconsole_normal_color and
43694
	grub_ofconsole_highlight_color (they're not directly related to
43695
	background and foreground).
43696
	(grub_ofconsole_setcolorstate): Extract background and foreground
43697
	from grub_ofconsole_normal_color and grub_ofconsole_highlight_color.
43698
43699
2008-06-17  Robert Millan  <rmh@aybabtu.com>
43700
43701
	* util/update-grub_lib.in (prepare_grub_to_access_device): Use
43702
	/boot/grub for the check in last commit, not /boot (they could be
43703
	different partitions).
43704
43705
2008-06-16  Robert Millan  <rmh@aybabtu.com>
43706
43707
	* util/update-grub_lib.in (prepare_grub_to_access_device): If we were
43708
	asked to setup access for the same partition that provides /boot,
43709
	don't bother using UUIDs since our root already has the value we
43710
	want.
43711
43712
2008-06-16  Robert Millan  <rmh@aybabtu.com>
43713
43714
	* util/biosdisk.c (convert_system_partition_to_system_disk): Detect
43715
	I2O devices.
43716
	Patch from Sven Mueller <sven@debian.org>.
43717
43718
2008-06-16  Robert Millan  <rmh@aybabtu.com>
43719
43720
	* util/update-grub.in: Check for $EUID instead of $UID.
43721
	Reported by Vincent Zweije.
43722
43723
2008-06-16  Bean  <bean123ch@gmail.com>
43724
43725
	* fs/ext2.c (grub_ext2_blockgroup): Revert to pre-journal state.
43726
	(grub_ext2_read_block): Likewise.
43727
	(grub_ext2_read_inode): Likewise.
43728
	(grub_ext2_mount): Likewise.
43729
	(grub_ext2_close): Likewise.
43730
	(grub_ext3_get_journal): Removed.
43731
43732
	* fs/reiserfs.c (grub_reiserfs_get_item): Revert to pre-journal state.
43733
	(grub_reiserfs_read_symlink): Likewise.
43734
	(grub_reiserfs_mount): Likewise.
43735
	(grub_reiserfs_open): Likewise.
43736
	(grub_reiserfs_read): Likewise.
43737
	(grub_reiserfs_close): Likewise.
43738
	(grub_reiserfs_get_journal): Removed.
43739
43740
	* fs/fshelp.c (grub_fshelp_read): Removed.
43741
	(grub_fshelp_map_block): Likewise.
43742
43743
	* include/grub/fshelp.h (grub_fshelp_journal_type): Removed.
43744
	(grub_fshelp_journal): Likewise.
43745
	(grub_fshelp_read): Likewise.
43746
	(grub_fshelp_map_block): Likewise.
43747
43748
2008-06-16  Pavel Roskin  <proski@gnu.org>
43749
43750
	* conf/powerpc-ieee1275.rmk: Remove -msoft-float, we don't use
43751
	floating point anymore.
43752
	* include/grub/powerpc/libgcc.h: Leave only necessary exports.
43753
43754
2008-06-15  Pavel Roskin  <proski@gnu.org>
43755
43756
	* commands/ls.c (grub_ls_list_files): Use integer calculations
43757
	for human readable format, avoid floating point use.
43758
	* kern/misc.c (grub_ftoa): Remove.
43759
	(grub_vsprintf): Remove floating point support.
43760
43761
2008-06-15  Robert Millan  <rmh@aybabtu.com>
43762
43763
	* util/grub.d/10_linux.in: Use the underlying device for loop-AES
43764
	devices.
43765
	Reported by Max Vozeler.
43766
43767
2008-06-15  Robert Millan  <rmh@aybabtu.com>
43768
43769
	* util/i386/pc/grub-mkimage.c (generate_image): If we included a drive
43770
	in our prefix, set install_{dos,bsd}_part = -2 to indicate this can be
43771
	skipped later.
43772
	(main): If a memdisk was requested, add "(memdisk)" drive explicitly to
43773
	the beginning of the prefix.
43774
43775
	* kern/i386/pc/init.c (make_install_device): Remove memdisk check.
43776
	It is assumed that if we have a memdisk, grub-mkimage has set
43777
	grub_prefix to include the "(memdisk)" drive in it.
43778
43779
2008-06-15  Robert Millan  <rmh@aybabtu.com>
43780
43781
	* term/i386/pc/console.c [GRUB_MACHINE_LINUXBIOS] (grub_console_init):
43782
	Initialize keyboard controller after registering the terminal, so that
43783
	grub_printf() can be called from grub_keyboard_controller_init().
43784
43785
2008-06-15  Robert Millan  <rmh@aybabtu.com>
43786
43787
	* fs/sfs.c (grub_sfs_read_extent): Fix the count of nodes in
43788
	extent-btree which is written as big endian on disk.
43789
	Reported by Alain Greppin  <al@chilibi.org>.
43790
43791
2008-06-14  Robert Millan  <rmh@aybabtu.com>
43792
43793
	* util/i386/efi/grub-install.in (modules): Remove `_chain'.
43794
	* util/i386/pc/grub-install.in (modules): Likewise.
43795
43796
2008-06-13  Pavel Roskin  <proski@gnu.org>
43797
43798
	* commands/ls.c (grub_ls_list_files): Fix format warnings.
43799
43800
2008-06-13  Bean  <bean123ch@gmail.com>
43801
43802
	* commands/hexdump.c (grub_cmd_hexdump): Adjust offset for partition.
43803
43804
	* fs/ext2.c (grub_ext3_get_journal): Fix revoke block handling.
43805
43806
	* fs/fshelp.c (grub_fshelp_map_block): Don't map block 0 as it's used
43807
	to indicate sparse block.
43808
43809
2008-06-12  Pavel Roskin  <proski@gnu.org>
43810
43811
	* fs/ext2.c (grub_ext2_read_inode): Don't normalize block
43812
	number, grub_fshelp_read() does it for us.
43813
43814
	* fs/fshelp.c (grub_fshelp_read): New function.  Implement
43815
	linear disk read with journal translation.
43816
	* fs/ext2.c: Use grub_fshelp_read() instead of grub_disk_read().
43817
	* include/grub/fshelp.h: Declare grub_fshelp_read().
43818
43819
2008-06-09  Pavel Roskin  <proski@gnu.org>
43820
43821
	* fs/minix.c (grub_minix_mount): Handle error reading
43822
	superblock.
43823
43824
2008-06-08  Robert Millan  <rmh@aybabtu.com>
43825
43826
	* util/i386/pc/grub-setup.c (main): If install drive is an LVM,
43827
	don't append the RAID prefix afterwards.
43828
	Reported by Clint Adams.
43829
43830
2008-06-08  Robert Millan  <rmh@aybabtu.com>
43831
43832
	Based on description from Pavel:
43833
	* kern/disk.c (grub_disk_check_range): Rename to ...
43834
	(grub_disk_adjust_range): ... this.  Add a comment explaining the
43835
	tasks performed by this function.
43836
43837
2008-06-08  Robert Millan  <rmh@aybabtu.com>
43838
43839
	* include/grub/ntfs.h (struct grub_ntfs_bpb): Rename `serial_number' to
43840
	`num_serial' (for consistency with other variables).
43841
	(struct grub_ntfs_data): Add `uuid' member.
43842
	* fs/ntfs.c (grub_ntfs_mount): Initialize `data->uuid'.
43843
	(grub_ntfs_uuid): New function.
43844
	(grub_ntfs_fs): Reference grub_ntfs_uuid() in `uuid' struct member.
43845
43846
2008-06-07  Pavel Roskin  <proski@gnu.org>
43847
43848
	* util/biosdisk.c (open_device): Revert last change to the
43849
	function, it broke installation.  The sector needs to be
43850
	different dependent on which device is opened.
43851
43852
2008-06-06  Robert Millan  <rmh@aybabtu.com>
43853
43854
	Ensure GRUB_KERNEL_MACHINE_DATA_END is always consistent with the
43855
	rest of GRUB, and breakage doesn't happen if its value were modified.
43856
43857
	* include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
43858
	Redefine as an offset from `GRUB_KERNEL_MACHINE_DATA_END' instead of
43859
	a constant (same value).
43860
	* kern/i386/pc/startup.S: Replace hardcoded `0x50' with
43861
	`GRUB_KERNEL_MACHINE_DATA_END' (same value).
43862
43863
2008-06-06  Robert Millan  <rmh@aybabtu.com>
43864
43865
	* util/biosdisk.c (open_device): Do not modify sector offset when
43866
	accessing a partition.  kern/disk.c already handles this for us.
43867
43868
2008-06-06  Robert Millan  <rmh@aybabtu.com>
43869
43870
	* util/grub-emu.c (grub_machine_init): Move code in this function from
43871
	here ...
43872
	(main): ... to here (before grub_util_biosdisk_init() call, to prevent
43873
	segfault in case grub_printf() is called).
43874
43875
	* util/i386/pc/grub-install.in: Append `--device-map=${device_map}' to
43876
	grub_probe.  Update all users not to explicitly add it again.
43877
	(grub_device): New variable; contains corresponding device for grubdir.
43878
	(fs_module, partmap_module, devabstraction_module): Pass
43879
	`--device ${grub_device}' to grub_probe to avoid traversing /dev
43880
	every time.
43881
43882
2008-06-05  Robert Millan  <rmh@aybabtu.com>
43883
43884
	* normal/misc.c (grub_normal_print_device_info): When a filesystem UUID
43885
	is found, print it (same layout as with labels).
43886
43887
2008-06-04  Robert Millan  <rmh@aybabtu.com>
43888
43889
	* util/biosdisk.c (get_drive): Rename to ...
43890
	(find_grub_drive): ... this.  Update all users.
43891
43892
	(get_os_disk): Rename to ...
43893
	(convert_system_partition_to_system_disk): ... this.  Update all users.
43894
43895
	(find_drive): Rename to ...
43896
	(find_system_device): ... this.  Update all users.
43897
43898
2008-06-04  Robert Millan  <rmh@aybabtu.com>
43899
43900
	* util/biosdisk.c (get_os_disk): Handle IDA devices.
43901
	* util/grub-mkdevicemap.c (get_mmc_disk_name)
43902
	(make_device_map): Likewise.
43903
43904
2008-06-01  Robert Millan  <rmh@aybabtu.com>
43905
43906
	*  util/biosdisk.c (get_drive): Verify that `map[i].drive' is non-NULL
43907
	before dereferencing it.
43908
43909
	* fs/fat.c (struct grub_fat_bpb): Move fat32-specific fields into a
43910
	union with fat12/fat16-specific ones.  Add some new fields, including
43911
	`num_serial' for both versions.
43912
	(struct grub_fat_data): Add `uuid' member.
43913
	(grub_fat_mount): Refer to fat32-specific fields in `bpb' by their new
43914
	names.  Initialize `data->uuid' using `num_serial'.
43915
	(grub_fat_uuid): New function.
43916
	(grub_fat_fs): Reference grub_fat_uuid() in `uuid' struct member.
43917
43918
	* fs/reiserfs.c (grub_reiserfs_superblock): Add `uuid' field.
43919
	(grub_reiserfs_uuid): New function.
43920
	(grub_reiserfs_fs): Reference grub_reiserfs_uuid() in `uuid' struct
43921
	member.
43922
43923
	* fs/xfs.c (grub_xfs_sblock): Add `uuid' field.
43924
	(grub_xfs_uuid): New function.
43925
	(grub_xfs_fs): Reference grub_reiserfs_uuid() in `uuid' struct member.
43926
43927
2008-06-01  Robert Millan  <rmh@aybabtu.com>
43928
43929
	* util/update-grub_lib.in (prepare_grub_to_access_device): Generate
43930
	code that is backward compatible with pre-uuid search command.
43931
43932
2008-05-31  Robert Millan  <rmh@aybabtu.com>
43933
43934
	* disk/i386/pc/biosdisk.c (grub_biosdisk_iterate): Iterate through
43935
	floppies after everything else, to ensure floppy drive isn't accessed
43936
	unnecessarily (patch from Bean).
43937
43938
2008-05-31  Robert Millan  <rmh@aybabtu.com>
43939
43940
	* commands/search.c (search_label, search_fs_uuid, search_file): Do
43941
	not print device names when we were asked to set a variable.
43942
43943
2008-05-31  Robert Millan  <rmh@aybabtu.com>
43944
43945
	* term/ieee1275/ofconsole.c (grub_ofconsole_setcursor): Implement
43946
	using "cursor-on" and "cursor-off" commands (understood at least by
43947
	the Open Firmware flavour on OLPC).
43948
43949
2008-05-31  Michael Gorven  <michael@gorven.za.net>
43950
43951
	* term/terminfo.c (grub_terminfo_set_current): Correct vt100 cursor
43952
	on and off sequences.
43953
43954
2008-05-31  Robert Millan  <rmh@aybabtu.com>
43955
43956
	* util/update-grub_lib.in: Replace `grub-probe' with `${grub_probe}'.
43957
	* util/update-grub.in: Likewise.
43958
43959
2008-05-30  Pavel Roskin  <proski@gnu.org>
43960
43961
	* util/biosdisk.c (linux_find_partition): Simplify logic and
43962
	make the code more universal.  Keep special processing for
43963
	devfs, but use a simple rule for all other devices.  If the
43964
	device ends with a number, append 'p' and the partition number.
43965
	Otherwise, append only the partition number.
43966
43967
2008-05-30  Robert Millan  <rmh@aybabtu.com>
43968
43969
	* util/update-grub.in (GRUB_DISABLE_LINUX_UUID): Export variable.
43970
	* util/grub.d/10_linux.in: If GRUB_DEVICE_UUID is set, and
43971
	GRUB_DISABLE_LINUX_UUID isn't true, use the filesystem UUIDs as
43972
	the `root' parameter to Linux.
43973
43974
2008-05-30  Robert Millan  <rmh@aybabtu.com>
43975
43976
	* commands/search.c (options): Rename --fs_uuid to --fs-uuid.
43977
	* util/update-grub_lib.in (prepare_grub_to_access_device): Replace
43978
	--fs_uuid with --fs-uuid.
43979
	* util/update-grub.in: Allow filesystem UUID probes to fail (since not
43980
	all filesystems support them).
43981
43982
2008-05-30  Robert Millan  <rmh@aybabtu.com>
43983
43984
	* fs/ext2.c (grub_ext2_uuid): Use `04x' instead of '02x' as
43985
	grub_printf() flags, since we're printing in units of 2 bytes.
43986
43987
2008-05-30  Robert Millan  <rmh@aybabtu.com>
43988
43989
	* util/grub.d/00_header.in: Remove obsolete comment referencing
43990
	convert_system_path_to_grub_path().
43991
	* util/update-grub.in: Likewise.
43992
	* util/update-grub_lib.in (is_path_readable_by_grub): New function.
43993
	(convert_system_path_to_grub_path): Add a warning message explaining
43994
	that this function is deprecated.  Rely on is_path_readable_by_grub()
43995
	for the readability checks.
43996
	(font_path): Use is_path_readable_by_grub() for the readability
43997
	check rather than convert_system_path_to_grub_path().
43998
43999
2008-05-30  Robert Millan  <rmh@aybabtu.com>
44000
44001
	* util/update-grub_lib.in (prepare_grub_to_access_device): New function.
44002
	* util/update-grub.in: Set `GRUB_FONT_PATH' to the system path, without
44003
	converting it first.
44004
	* util/grub.d/00_header.in: Use prepare_grub_to_access_device() to setup
44005
	grub.cfg for access to font file, and afterwards call it again to set
44006
	the root device.
44007
44008
2008-05-30  Robert Millan  <rmh@aybabtu.com>
44009
44010
	* commands/search.c (options): Add --fs_uuid option.
44011
	(search_fs_uuid): New function.
44012
	(grub_cmd_search): Fix --set argument passing.
44013
	Use search_fs_uuid() when requested via --fs_uuid.
44014
	(grub_search_init): Update help message.
44015
	* fs/ext2.c (struct grub_ext2_sblock): Rename `unique_id' to `uuid'
44016
	and redeclare it as an array of 16-bit words.
44017
	(grub_ext2_uuid): New function.
44018
	(grub_ext2_fs): Reference grub_ext2_uuid() in `uuid' struct member.
44019
	* include/grub/fs.h (struct grub_fs): Add `uuid' struct member.
44020
	* util/update-grub.in (GRUB_DEVICE_UUID, GRUB_DEVICE_BOOT)
44021
	(GRUB_DEVICE_BOOT_UUID): New variables.
44022
	(GRUB_DRIVE. GRUB_DRIVE_BOOT. GRUB_DRIVE_BOOT_GRUB): Remove.
44023
	* util/grub.d/00_header.in: Set root using `search --fs_uuid' command
44024
	whenever possible.
44025
	* util/grub.d/10_hurd.in: Avoid explicit use of root drive.  Instead,
44026
	just assume `root' variable has the right value.
44027
	* util/grub.d/10_linux.in: Likewise.
44028
	* util/grub-probe.c (probe): Probe for filesystem UUID when requested
44029
	via PRINT_FS_UUID.
44030
	(main): Recognise `-t fs_uuid' argument.
44031
44032
2008-05-30  Robert Millan  <rmh@aybabtu.com>
44033
44034
	* util/biosdisk.c (map): Redefine structure to hold information
44035
	about GRUB drive name.
44036
	(get_drive): Reimplement without assuming (and verifying) BIOS-like
44037
	drive names.
44038
	(call_hook): Remove.
44039
	(grub_util_biosdisk_iterate): Access drive names via `.drive' struct
44040
	member.  Assume drive has partitions.
44041
	(grub_util_biosdisk_open): Access device names via `.device' struct
44042
	member.
44043
	(open_device): Likewise.
44044
	(find_drive): Likewise.
44045
	(read_device_map): Adjust map[] usage to match the new struct
44046
	definition.  Don't check for duplicates (still possible, but not cheap
44047
	anymore).
44048
	(grub_util_biosdisk_fini): Free malloced buffers referenced by map[].
44049
	(make_device_name): Remove assumption of BIOS-like drive names.
44050
44051
2008-05-30  Pavel Roskin  <proski@gnu.org>
44052
44053
	* conf/i386-efi.rmk (normal/execute.c_DEPENDENCIES): Remove, as
44054
	compiling execute.c doesn't need grub_script.tab.h anymore.
44055
	(normal/command.c_DEPENDENCIES): Likewise.
44056
	(normal/function.c_DEPENDENCIES): Likewise.
44057
	* conf/i386-ieee1275.rmk: Likewise.
44058
	* conf/i386-linuxbios.rmk: Likewise.
44059
	* conf/i386-pc.rmk: Likewise.
44060
	* conf/powerpc-ieee1275.rmk: Likewise.
44061
	* conf/sparc64-ieee1275.rmk: Likewise.
44062
44063
2008-05-29  Pavel Roskin  <proski@gnu.org>
44064
44065
	* disk/lvm.c (grub_lvm_scan_device): Check for the buffer end
44066
	when scanning metadata for volume group name.
44067
44068
	* include/grub/script.h: Don't include grub_script.tab.h.  It's
44069
	a generated file, which may only be included from the files with
44070
	DEPENDENCIES rules in the makefile.  Don't use typedef YYSTYPE,
44071
	use union YYSTYPE, as the later allows forward declaration.
44072
	* normal/lexer.c: Don't use typedef YYSTYPE, use union YYSTYPE.
44073
44074
2008-05-29  Robert Millan  <rmh@aybabtu.com>
44075
44076
	* term/i386/pc/at_keyboard.c: Include `grub/machine/machine.h'.
44077
	(OLPC_UP, OLPC_DOWN, OLPC_LEFT, OLPC_RIGHT): New macros.
44078
	[GRUB_MACHINE_IEEE1275] (keyboard_map): Add OLPC scan codes
44079
	(grub_console_checkkey): Add grub_dprintf() call to report unknown
44080
	scan codes.
44081
44082
2008-05-29  Robert Millan  <rmh@aybabtu.com>
44083
44084
	* term/i386/pc/at_keyboard.c (grub_console_checkkey): Add support for
44085
	control key combinations.
44086
44087
2008-05-29  Robert Millan  <rmh@aybabtu.com>
44088
44089
	* util/powerpc/ieee1275/grub-install.in: Move from here ...
44090
	* util/ieee1275/grub-install.in: ... to here.
44091
	* powerpc-ieee1275.rmk (grub_install_SOURCES): Update location.
44092
	* i386-ieee1275.rmk (sbin_SCRIPTS): New variable.
44093
	(grub_install_SOURCES): Likewise.
44094
44095
2008-05-29  Robert Millan  <rmh@aybabtu.com>
44096
44097
	* fs/affs.c: Update copyright year.
44098
	* fs/ext2.c: Likewise.
44099
	* fs/fshelp.c: Likewise.
44100
	* fs/hfsplus.c: Likewise.
44101
	* fs/ntfs.c: Likewise.
44102
	* fs/xfs.c: Likewise.
44103
	* include/grub/fshelp.h: Likewise.
44104
	* util/grub-mkdevicemap.c: Likewise.
44105
44106
2008-05-28  Robert Millan  <rmh@aybabtu.com>
44107
44108
	* util/update-grub.in: Allow chmod call to fail, since /boot/grub/
44109
	might need to be fatfs to support some firmware implementations
44110
	(e.g. OFW or EFI).
44111
44112
2008-05-28  Robert Millan  <rmh@aybabtu.com>
44113
44114
	* util/biosdisk.c (linux_find_partition, get_os_disk): Handle MMC
44115
	devices.
44116
	* util/grub-mkdevicemap.c (get_mmc_disk_name)
44117
	(make_device_map): Likewise.
44118
44119
2008-05-20  Bean  <bean123ch@gmail.com>
44120
44121
	* fs/fshelp.c (grub_fshelp_map_block): New function.
44122
	(grub_fshelp_find_file): Use 64-bit type for pos and block address.
44123
	Use `>>' and `&' operator to avoid 64-bit divide and modulo.
44124
44125
	* include/grub/fshelp.h (grub_fshelp_journal_type): New enum.
44126
	(GRUB_FSHELP_JOURNAL_UNUSED_MAPPING): New macro.
44127
	(grub_fshelp_journal): New structure.
44128
	(grub_fshelp_map_block): New function prototype.
44129
	(grub_fshelp_read_file): Use grub_disk_addr_t as block type.
44130
	(grub_fshelp_map_block): Likewise.
44131
44132
	* fs/ext2.c (EXT3_FEATURE_COMPAT_HAS_JOURNAL): New macro.
44133
	(EXT3_JOURNAL_MAGIC_NUMBER): Likewise.
44134
	(EXT3_JOURNAL_DESCRIPTOR_BLOCK): Likewise.
44135
	(EXT3_JOURNAL_COMMIT_BLOCK): Likewise.
44136
	(EXT3_JOURNAL_SUPERBLOCK_V1): Likewise.
44137
	(EXT3_JOURNAL_SUPERBLOCK_V2): Likewise.
44138
	(EXT3_JOURNAL_REVOKE_BLOCK): Likewise.
44139
	(EXT3_JOURNAL_FLAG_ESCAPE): Likewise.
44140
	(EXT3_JOURNAL_FLAG_SAME_UUID): Likewise.
44141
	(EXT3_JOURNAL_FLAG_DELETED): Likewise.
44142
	(EXT3_JOURNAL_FLAG_LAST_TAG): Likewise.
44143
	(grub_ext2_sblock): New members for journal support.
44144
	(grub_ext3_journal_header): New structure.
44145
	(grub_ext3_journal_revoke_header): Likewise.
44146
	(grub_ext3_journal_block_tag): Likewise.
44147
	(grub_ext3_journal_sblock): Likewise.
44148
	(grub_fshelp_node): New members logfile and journal.
44149
	(grub_ext2_read_block): Change block type to grub_disk_addr_t. Use
44150
	grub_fshelp_map_block to get real block number.
44151
	(grub_ext2_blockgroup): Use grub_fshelp_map_block to get real block
44152
	number.
44153
	(grub_ext2_read_inode): Likewise.
44154
	(grub_ext3_get_journal): New function.
44155
	(grub_read_inode): Initialize journal using grub_ext3_get_journal.
44156
	(grub_ext2_close): Release memory used by journal.
44157
44158
	* fs/reiserfs.c (REISERFS_MAGIC_STRING): Changed to "ReIsEr".
44159
	(REISERFS_MAGIC_DESC_BLOCK): New macro.
44160
	(grub_reiserfs_transaction_header): Renamed to
44161
	grub_reiserfs_description_block, replace field data with real_blocks.
44162
	(grub_reiserfs_commit_block): New structure.
44163
	(grub_reiserfs_data): New member journal.
44164
	(grub_reiserfs_get_item): Use grub_fshelp_map_block to get real block
44165
	number.
44166
	(grub_reiserfs_read_symlink): Likewise.
44167
	(grub_reiserfs_iterate_dir): Likewise.
44168
	(grub_reiserfs_open): Likewise.
44169
	(grub_reiserfs_read): Likewise.
44170
	(grub_reiserfs_get_journal): New function.
44171
	(grub_reiserfs_mount): Use "ReIsEr" as super block magic, as there are
44172
	three varieties ReIsErFs, ReIsEr2Fs and ReIsEr3Fs. Initialize journal
44173
	using grub_reiserfs_get_journal.
44174
	(grub_reiserfs_close): Release memory used by journal.
44175
44176
	* fs/affs.c (grub_affs_read_block): Change block type to
44177
	grub_disk_addr_t. Use grub_divmod64 to do 64-bit division.
44178
44179
	* fs/afs.c (grub_afs_read_block): Change block type to grub_disk_addr_t.
44180
44181
	* fs/hfsplus.c (grub_hfsplus_read_block): Likewise.
44182
44183
	* fs/ntfs.c (grub_ntfs_read_block): Likewise.
44184
44185
	* fs/udf.c (grub_udf_read_block): Change block type to
44186
	grub_disk_addr_t. Use type cast to avoid warning.
44187
44188
	* fs/xfs.c (grub_xfs_read_block): Likewise.
44189
44190
2008-05-16  Christian Franke  <franke@computer.org>
44191
44192
	* commands/cat.c (grub_cmd_cat): Remove non-ESC keys from keyboard queue
44193
	to ensure that break with ESC will always work.
44194
	* commands/sleep.c (grub_interruptible_millisleep): Likewise.
44195
	Remove ESC from keyboard queue.
44196
44197
2008-05-16  Christian Franke  <franke@computer.org>
44198
44199
	* util/biosdisk.c: [__CYGWIN__] Add includes.
44200
	(grub_util_biosdisk_open): Use Linux code also for Cygwin.
44201
	(get_os_disk): Move variable declarations to OS specific
44202
	parts to avoid warning.
44203
	[__GNU__] (get_os_disk): Fix /dev/sdXsN case.
44204
	[__CYGWIN__] (get_os_disk): Add Cygwin /dev/sdXN device names.
44205
	(grub_util_biosdisk_get_grub_dev): Use Linux code also for
44206
	Cygwin.
44207
	* util/getroot.c: [__CYGWIN__] Add includes.
44208
	(strip_extra_slashes): Fix "/" case.
44209
	[__CYGWIN__] (get_win32_path): New function.
44210
	[__CYGWIN__] (grub_get_prefix): Add conversion to win32 path.
44211
	[__CYGWIN__] (find_root_device): Disable.
44212
	[__CYGWIN__] (get_bootsec_serial): New function.
44213
	[__CYGWIN__] (find_cygwin_root_device): Likewise.
44214
	[__linux__] (grub_guess_root_device): Add early returns to simplify
44215
	structure.
44216
	[__CYGWIN__] (grub_guess_root_device): Call find_cygwin_root_device.
44217
	[__linux__] (grub_util_get_dev_abstraction): Enable LVM and RAID
44218
	check for Linux only.
44219
44220
2008-05-15  Bean  <bean123ch@gmail.com>
44221
44222
	* kern/i386/pc/startup.S (grub_console_getkey): Workaround for the
44223
	keyboard hang problem in apple's intel mac.
44224
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
44225
2008-05-09  Robert Millan  <rmh@aybabtu.com>
44226
44227
	* util/biosdisk.c (linux_find_partition, get_os_disk): Handle Virtio
44228
	devices.
44229
	* util/grub-mkdevicemap.c (get_virtio_disk_name)
44230
	(make_device_map): Likewise.
44231
	Reported by Aurelien Jarno <aurel32@debian.org>
44232
44233
2008-05-07  Ian Campbell  <ijc@hellion.org.uk>
44234
44235
	* util/biosdisk.c (get_os_disk): Recognise xvd type disks.
44236
	* util/grub-mkdevicemap.c (get_xvd_disk_name): New function.
44237
	(make_device_map): Output entries for xvd type disks.
44238
44239
2008-05-07  Robert Millan  <rmh@aybabtu.com>
44240
44241
	* util/biosdisk.c (linux_find_partition, get_os_disk): Handle CCISS
44242
	devices.
44243
	* util/grub-mkdevicemap.c (get_cciss_disk_name)
44244
	(make_device_map): Likewise.
44245
	Reported by Roland Dreier <rdreier@cisco.com>
44246
44247
2008-05-07  Robert Millan  <rmh@aybabtu.com>
44248
44249
	* disk/lvm.c (grub_lvm_scan_device): Detect errors in an additional
44250
	grub_strstr() call.  Correct a few mistakes in failure path handling.
44251
44252
2008-05-06  Robert Millan  <rmh@aybabtu.com>
44253
44254
	* util/update-grub_lib.in (make_system_path_relative_to_its_root):
44255
	Do not print a trailing slash (therefore, the root directory is an
44256
	empty string).
44257
	(convert_system_path_to_grub_path): Do not remove trailing slash
44258
	from make_system_path_relative_to_its_root() output.
44259
44260
	* util/i386/pc/grub-install.in: Add trailing slash to output from
44261
	make_system_path_relative_to_its_root().
44262
44263
2008-05-06  Robert Millan  <rmh@aybabtu.com>
44264
44265
	* util/grub-fstest.c (grub_refresh): Call `fflush (stdout)'.  This
44266
	ensures that output lines aren't intermangled with those sent to
44267
	stderr (via grub_util_info()).
44268
	* util/grub-probe.c (grub_refresh): Likewise.
44269
	* util/i386/pc/grub-setup.c (grub_refresh): Likewise.
44270
44271
2008-05-05  Christian Franke  <franke@computer.org>
44272
44273
	* util/grub-mkdevicemap.c (get_floppy_disk_name) [__CYGWIN__]:
44274
	Add Cygwin device names.
44275
	(get_ide_disk_name) [__CYGWIN__]: Likewise.
44276
	(get_scsi_disk_name) [__CYGWIN__]: Likewise.
44277
	(check_device): Return error instead of success on empty name.
44278
	(make_device_map): Move label inside linux specific code to
44279
	prevent compiler warning.
44280
44281
2008-04-30  Robert Millan  <rmh@aybabtu.com>
44282
44283
	Based on patch from Fabian Greffrath <greffrath@leat.rub.de>
44284
	* util/grub.d/10_linux.in: Add ${GRUB_CMDLINE_LINUX_DEFAULT} to the
44285
	first boot option.
44286
	* util/update-grub.in: Export GRUB_CMDLINE_LINUX_DEFAULT.
44287
44288
2008-04-29  Robert Millan  <rmh@aybabtu.com>
44289
44290
	* docs/grub.cfg: New file (example GRUB configuration).
44291
44292
2008-04-26  Robert Millan  <rmh@aybabtu.com>
44293
44294
	* DISTLIST: Sort (sort -u < DISTLIST | sponge DISTLIST).  Add
44295
	`loader/i386/ieee1275/linux.c', `loader/i386/ieee1275/linux_normal.c'
44296
	and `disk/ieee1275/nand.c'.
44297
44298
2008-04-25  Bean  <bean123ch@gmail.com>
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
44299
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
44300
	* Makefile.in (RMKFILES): Add missing arch i386-ieee1275 and
44301
	i386-linuxbios.
44302
44303
	* commands/hexdump.c (grub_cmd_hexdump): Support dumping of device,
44304
	change the buffer size to 4096 for cdrom device.
44305
44306
	* conf/i386-ieee1275.rmk (pkglib_MODULES): Add _linux.mod, linux.mod
44307
	and nand.mod.
44308
	(_linux_mod_SOURCES): New variable.
44309
	(_linux_mod_CFLAGS): Likewise.
44310
	(_linux_mod_LDFLAGS): Likewise.
44311
	(linux_mod_SOURCES): Likewise.
44312
	(linux_mod_CFLAGS): Likewise.
44313
	(linux_mod_LDFLAGS): Likewise.
44314
	(nand_mod_SOURCES): Likewise.
44315
	(nand_mod_CFLAGS): Likewise.
44316
	(nand_mod_LDFLAGS): Likewise.
44317
44318
	* disk/ieee1275/ofdisk.c (grub_ofdisk_open): Return
44319
	GRUB_ERR_UNKNOWN_DEVICE instead of GRUB_ERR_BAD_DEVICE if no device
44320
	type property. (nand device in olpc don't have this property)
44321
44322
	* include/grub/disk.h (grub_disk_dev_id): New macro
44323
	GRUB_DISK_DEVICE_NAND_ID.
44324
44325
	* include/grub/i386/ieee1275/loader.h (grub_rescue_cmd_linux): New
44326
	function prototype.
44327
	(grub_rescue_cmd_initrd): Likewise.
44328
44329
	* include/grub/i386/linux.h (GRUB_LINUX_OFW_SIGNATURE): New macro.
44330
	(linux_kernel_params): Add new member ofw_signature, ofw_num_items,
44331
	ofw_cif_handler and ofw_idt, adjust padding number.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
44332
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
44333
	* include/grub/i386/pc/memory.h (grub_upper_mem): Export it if
44334
	GRUB_MACHINE_IEEE1275 is defined.
44335
44336
	* include/grub/ieee1275/ieee1275.h (grub_available_iterate):
44337
	Use NESTED_FUNC_ATTR attribute on the hook parameter.
44338
44339
	* kern/powerpc/ieee1275/init.c (grub_claim_heap): Use NESTED_FUNC_ATTR
44340
	on nested function heap_init.
44341
	(grub_upper_mem): New variable for i386-ieee1275.
44342
	(grub_get_extended_memory): New function for i386-ieee1275.
44343
	(grub_machine_init): Call grub_get_extended_memory for i386-ieee1275.
44344
44345
	* kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Use
44346
	NESTED_FUNC_ATTR on the hook parameter. Don't quit if no device type
44347
	property.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
44348
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
44349
	* loader/i386/ieee1275/linux.c: New file.
44350
44351
	* loader/i386/ieee1275/linux_normal.c: New file.
44352
44353
	* disk/ieee1275/nand.c: New file.
44354
44355
2008-04-18  Thomas Schwinge  <tschwinge@gnu.org>
44356
44357
	* util/i386/pc/grub-mkrescue.in (grub_mkimage): Don't overwrite correct
44358
	value.
44359
	* util/powerpc/ieee1275/grub-mkrescue.in (grub_mkimage): Likewise.
44360
44361
2008-04-18  Robert Millan  <rmh@aybabtu.com>
44362
44363
	Restructures early code path on ieee1275 to unify grub_main() as
44364
	the first C function that is executed in every platform.
44365
44366
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_init): New prototype.
44367
	* kern/i386/ieee1275/startup.S (_start): Jump to grub_main() instead of
44368
	cmain().
44369
	* kern/powerpc/ieee1275/crt0.S (_start): Likewise.
44370
	* kern/ieee1275/cmain.c (cmain): Rename to ...
44371
	* kern/ieee1275/cmain.c (grub_ieee1275_init): ... this.
44372
	* kern/ieee1275/init.c (grub_machine_init): Call grub_ieee1275_init()
44373
	at the beginning.
44374
44375
2008-04-18  Robert Millan  <rmh@aybabtu.com>
44376
44377
	* util/update-grub.in: Fix syntax error when setting
44378
	`GRUB_PRELOAD_MODULES'.
44379
	Reported by Stephane Chazelas <stephane@artesyncp.com>
44380
44381
2008-04-17  Lubomir Kundrak  <lkundrak@redhat.com>
44382
44383
	* aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): take only .text
44384
	section into account, newer toolchains generate unique build ids
44385
	* configure.ac: remove the test for --build-id=none acceptance,
44386
	we want build ids to be preserved
44387
	* genmk.rb: add -R .note.gnu.build-id to objcopy, so build id
44388
	far from other sections don't cause the raw binary images grow
44389
	size
44390
44391
2008-04-15  Robert Millan  <rmh@aybabtu.com>
44392
44393
	* disk/lvm.c: Update copyright year.
44394
	* kern/misc.c: Likewise.
44395
44396
2008-04-14  Vesa Jaaskelainen  <chaac@nic.fi>
44397
44398
	* disk/lvm.c (grub_lvm_scan_device): Add forgotten failure path when
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
44399
	there is no memory left for physical volume name.
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
44400
44401
2008-04-14  Vesa Jaaskelainen  <chaac@nic.fi>
44402
44403
	* disk/lvm.c (grub_lvm_scan_device): Fix logical volume's physical
44404
	volume name mapping to support bigger than 9 character names properly.
44405
44406
2008-04-13  Robert Millan  <rmh@aybabtu.com>
44407
44408
	* disk/i386/pc/biosdisk.c (grub_biosdisk_rw): Fix CHS limit check,
44409
	as per http://www.allensmith.net/Storage/HDDlimit/Int13h.htm
44410
44411
2008-04-13  Christian Franke  <franke@computer.org>
44412
44413
	* util/i386/pc/grub-mkrescue.in: Add --emulation=floppy
44414
	to create a floppy emulation boot CD when non emulation mode
44415
	does not work.
44416
	Enable Joliet CD filesystem extension.
44417
44418
2008-04-13  Robert Millan  <rmh@aybabtu.com>
44419
44420
	* kern/misc.c (grub_strncat): Fix off-by-one error.
44421
	Reported by Zhang Huan <zhanghuan@nrchpc.ac.cn>
44422
44423
	* kern/env.c (grub_env_context_close): Clear current context, not
44424
	previous one.
44425
	Patch from Zhang Huan <zhanghuan@nrchpc.ac.cn>
44426
44427
	* kern/misc.c (grub_strcat): Minor speed optimization (same code size).
44428
44429
2008-04-13  Robert Millan  <rmh@aybabtu.com>
44430
44431
	Improve robustness when handling LVM.
44432
44433
	* disk/lvm.c (grub_lvm_getvalue): Return 0 when `*p' is NULL
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
44434
	(and leave `*p' unmodified).
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
44435
	(grub_lvm_iterate): Don't assume `vg->lvs != NULL' when iterating
44436
	through it.
44437
	(grub_lvm_memberlist): Don't assume `lv->vg->pvs != NULL' when
44438
	iterating through it.
44439
	(grub_lvm_open): Don't assume `vg->lvs != NULL' when iterating
44440
	through it.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
44441
	(grub_lvm_scan_device): Check the return value (and fail gracefully
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
44442
	when due) on each grub_lvm_getvalue() or grub_strstr() call.
44443
	Don't assume `vg->pvs != NULL' when iterating through it.
44444
44445
2008-04-13  Robert Millan  <rmh@aybabtu.com>
44446
44447
	* gendistlist.sh (EXTRA_DISTFILES): Add `genpartmaplist.sh'.
44448
	* genmk.rb (partmap): New variable.
44449
	(CLEANFILES, PARTMAPFILES): Add #{partmap}.
44450
	(#{partmap}): New target rule.
44451
	* genpartmaplist.sh: New file.
44452
	* Makefile.in (pkglib_DATA): Add partmap.lst.
44453
	(partmap.lst): New target rule.
44454
	* util/i386/pc/grub-mkrescue.in: Generate grub.cfg that loads needed
44455
	modules (including all partition maps), instead of preloading them.
44456
44457
2007-04-13  Fabian Greffrath  <fabian.greffrath@web.de>
44458
44459
	* util/grub.d/30_os-prober.in: New script. Use `os-prober' and
44460
	`linux-boot-prober' (if installed) to detect other operating
44461
	systems which are installed on the computer and add them to
44462
	the boot menu.
44463
	* conf/common.rmk: Build and install 30_os-prober.
44464
44465
2008-04-12  Robert Millan  <rmh@aybabtu.com>
44466
44467
	* kern/powerpc/ieee1275/init.c: Move from here ...
44468
	* kern/ieee1275/init.c: ... to here.  Update all users.
44469
44470
	* kern/powerpc/ieee1275/cmain.c: Move from here ...
44471
	* kern/ieee1275/cmain.c: ... to here.  Update all users.
44472
44473
	* kern/powerpc/ieee1275/openfw.c: Move from here ...
44474
	* kern/ieee1275/openfw.c: ... to here.  Update all users.
44475
44476
	* loader/powerpc/ieee1275/multiboot2.c: Move from here ...
44477
	* loader/ieee1275/multiboot2.c: ... to here.  Update all users.
44478
44479
2008-04-10  Pavel Roskin  <proski@gnu.org>
44480
44481
	* configure.ac: Always use "_cv_" in cache variables for
44482
	compatibility with Autoconf 2.62.
44483
44484
2008-04-07  Robert Millan  <rmh@aybabtu.com>
44485
44486
	Revert grub/machine/init.h addition by Pavel (since it breaks on
44487
	i386-ieee1275 and others):
44488
	* util/i386/pc/misc.c: Remove grub/machine/init.h.
44489
	* util/powerpc/ieee1275/misc.c: Likewise.
44490
44491
2008-04-07  Robert Millan  <rmh@aybabtu.com>
44492
44493
	* util/grub-probe.c (probe): Improve error message.
44494
44495
2008-04-07  Robert Millan  <rmh@aybabtu.com>
44496
44497
	* util/biosdisk.c (read_device_map): Skip devices that don't exist
44498
	(this prevents the presence of a bogus entry from ruining the whole
44499
	thing).
44500
44501
2008-04-06  Pavel Roskin  <proski@gnu.org>
44502
44503
	* util/biosdisk.c: Include grub/util/biosdisk.h.
44504
	* util/grub-fstest.c (execute_command): Make static.
44505
	* util/grub-mkdevicemap.c (check_device): Likewise.
44506
	* util/i386/pc/misc.c: Include grub/machine/init.h.
44507
	* util/powerpc/ieee1275/misc.c: Likewise.
44508
	* util/lvm.c: Include grub/util/lvm.h.
44509
	* util/misc.c: Include grub/kernel.h, grub/misc.h and
44510
	grub/cache.h.
44511
	* util/raid.c: Include grub/util/raid.h.
44512
	(grub_util_getdiskname): Make static.
44513
44514
	* util/grub-emu.c (main): Remove calls to grub_hostfs_init() and
44515
	grub_hostfs_fini(), as they are called from grub_init_all() and
44516
	grub_fini_all() respectively.  This fixes an infinite loop in
44517
	grub-fstest due to double registration of hostfs.
44518
	Reported by Christian Franke <Christian.Franke@t-online.de>
44519
44520
2008-04-05  Pavel Roskin  <proski@gnu.org>
44521
44522
	* bus/pci.c (grub_pci_iterate): For multifunction devices, probe
44523
	all 8 functions.  Otherwise, probe function 0 only.
44524
44525
2008-04-04  Pavel Roskin  <proski@gnu.org>
44526
44527
	* commands/lspci.c (grub_lspci_iter): Print the bus number
44528
	correctly.
44529
44530
	* commands/lspci.c (grub_pci_classes): Fix typos.
44531
	(grub_lspci_iter): Don't print func twice.  Print vendor ID
44532
	before device ID, as it's normally done.
44533
44534
	* kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options):
44535
	Fix signedness warnings.
44536
	* kern/powerpc/ieee1275/openfw.c (grub_available_iterate):
44537
	Likewise.
44538
	* util/ieee1275/get_disk_name.c: Include config.h so that
44539
	_GNU_SOURCE is defined and getline() is declared.  Mark an
44540
	unused argument as such.  Fix a signedness warning.
44541
44542
2008-04-02  Pavel Roskin  <proski@gnu.org>
44543
44544
	* genkernsyms.sh.in: Use more robust assignments for CC and
44545
	srcdir.  Quote srcdir.
44546
	* gensymlist.sh.in: Likewise.  Assert at the compile time that
44547
	the symbol table is not empty.
44548
44549
	* disk/raid.c (grub_raid_memberlist): Fix a signedness warning.
44550
	* fs/cpio.c (grub_cpio_read): Likewise.
44551
44552
2008-04-01  Pavel Roskin  <proski@gnu.org>
44553
44554
	* disk/ata.c (grub_ata_open): Don't lose precision in disk->id.
44555
	* disk/host.c (grub_host_open): Likewise.
44556
	* disk/loopback.c (grub_loopback_open): Likewise.
44557
	* disk/memdisk.c (grub_memdisk_open): Use a string pointer for
44558
	disk->id as in disk/host.c, not a multi-character constant.
44559
44560
	* util/grub-fstest.c (cmd_cmp): Use fseeko(), not fseek().  The
44561
	later is obsolete, potentially dangerous and sets a bad example.
44562
	* util/i386/efi/grub-mkimage.c (make_header): Likewise.
44563
	* util/misc.c (grub_util_get_image_size): Likewise.
44564
44565
	* disk/loopback.c (options): Improve help for "--partitions".
44566
44567
	* normal/arg.c (grub_arg_show_help): Fix spacing of the long
44568
	options to align them with the short options, e.g. "echo -e".
44569
44570
2008-03-31  Bean  <bean123ch@gmail.com>
44571
44572
	* video/reader/png.c (grub_png_data): New member is_16bit and
44573
	image_data.
44574
	(grub_png_decode_image_header): Detect 16 bit png image.
44575
	(grub_png_convert_image): New function to convert 16 bit image to 8 bit.
44576
	(grub_png_decode_png): Call grub_png_convert_image for 16 bit image.
44577
	(grub_video_reader_png): Release memory occupied by image_data.
44578
44579
	* fs/ntfs.c (find_attr): Handle non-resident attribute list larger than
44580
	4096 bytes.
44581
	(grub_nfs_mount): Skip the test for sector per cluster.
44582
44583
	* include/grub/ntfs.h (MAX_SPC): Removed.
44584
44585
2008-03-31  Bean  <bean123ch@gmail.com>
44586
44587
	* conf/common.rmk (pkgdata_MODULES): Add afs.mod.
44588
	(grub_probe_SOURCES): Add fs/afs.c.
44589
	(grub_fstest_SOURCES): Likewise.
44590
	(afs_mod_SOURCES): New variable.
44591
	(afs_mod_CFLAGS): Likewise.
44592
	(afs_mod_LDFLAGS): Likewise.
44593
44594
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/afs.c.
44595
	(grub_emu_SOURCES): Likewise.
44596
44597
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
44598
44599
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
44600
44601
	* conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
44602
44603
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
44604
44605
	* fs/afs.c: New file.
44606
44607
2008-03-30  Pavel Roskin  <proski@gnu.org>
44608
44609
	* disk/host.c: Include grub/misc.h to fix a warning.
44610
	* util/hostfs.c: Use GRUB_MOD_INIT and GRUB_MOD_FINI to fix
44611
	warnings about implicit declarations.
44612
44613
	* fs/udf.c (grub_udf_mount): Fix warning about a shadowing a
44614
	variable.
44615
	* include/grub/i386/loader.h: Change declaration of
44616
	grub_linux_boot() to match what grub_loader_set() expects.
44617
	* util/getroot.c (grub_guess_root_device): Return const char* to
44618
	fix a warning.
44619
	* util/grub-probe.c (probe): Fix a warning about uninitialized
44620
	abstraction_name variable.
44621
	* util/i386/get_disk_name.c (grub_util_get_disk_name): Mark
44622
	second argument as unused to fix a warning.
44623
44624
	* loader/i386/pc/multiboot2.c (grub_mb2_arch_elf64_hook): Add
44625
	missing grub_error() call.
44626
44627
	* util/update-grub_lib.in: Define datarootdir, since Autoconf
44628
	2.60 and newer uses it to define datadir.
44629
44630
	* commands/sleep.c: Fix warning about implicit declaration.
44631
	* disk/memdisk.c: Likewise.
44632
	* loader/aout.c: Likewise.
44633
	* loader/i386/bsd_normal.c: Likewise.
44634
	* util/grub-probe.c: Likewise.
44635
44636
	* commands/i386/cpuid.c (has_longmode): Make static.
44637
	* disk/i386/pc/biosdisk.c (cd_drive): Likewise.
44638
	* include/grub/i386/bsd.h (bios_memmap_t): Remove, it's unused.
44639
44640
	* kern/i386/pc/startup.S (real_to_prot): Use %cs prefix to load
44641
	GDT.  This is more robust, as %ds can change.
44642
	(grub_biosdisk_rw_int13_extensions): Don't clear %ds before
44643
	calling real_to_prot().
44644
	(grub_biosdisk_get_diskinfo_int13_extensions): Likewise.
44645
44646
2008-03-28  Pavel Roskin  <proski@gnu.org>
44647
44648
	* kern/i386/pc/startup.S: Assert that uncompressed functions
44649
	don't spill beyond GRUB_KERNEL_MACHINE_RAW_SIZE.
44650
	* kern/i386/pc/lzo1x.S: Remove all .align directives in the
44651
	code, as they push parts of the code (error handlers) beyond
44652
	GRUB_KERNEL_MACHINE_RAW_SIZE.  Speed is not as important in this
44653
	code as correctness and size.
44654
44655
2008-03-28  Pavel Roskin  <proski@gnu.org>
44656
44657
	* kern/i386/pc/startup.S
44658
	(grub_biosdisk_get_diskinfo_int13_extensions): When converting
44659
	data block address to the real mode, keep offset minimal.  This
44660
	works around a bug in AWARD BIOS on old Athlon systems, which
44661
	makes CD detection hang.
44662
44663
2008-03-26  Pavel Roskin  <proski@gnu.org>
44664
44665
	* normal/color.c (grub_parse_color_name_pair): Make `name' a
44666
	const.
44667
	* include/grub/normal.h: Add grub_parse_color_name_pair()
44668
	declaration.
44669
44670
2008-03-24  Bean  <bean123ch@gmail.com>
44671
44672
	* disk/i386/pc/biosdisk.c (cd_start): Removed.
44673
	(cd_count): Removed.
44674
	(cd_drive): New variable.
44675
	(grub_biosdisk_get_drive): Don't check for (cdN) device.
44676
	(grub_biosdisk_call_hook): Likewise.
44677
	(grub_biosdisk_iterate): Change cdrom detection method.
44678
	(grub_biosdisk_open): Replace cd_start with cd_drive.
44679
	(GRUB_MOD_INIT): Use grub_biosdisk_get_cdinfo_int13_extension to
44680
	detect cdrom device.
44681
44682
	* include/grub/i386/pc/biosdisk.h (GRUB_BIOSDISK_MACHINE_CDROM_START):
44683
	Removed.
44684
	(GRUB_BIOSDISK_MACHINE_CDROM_END): Removed.
44685
	(GRUB_BIOSDISK_CDTYPE_NO_EMUL): New macro.
44686
	(GRUB_BIOSDISK_CDTYPE_1_2_M): Likewise.
44687
	(GRUB_BIOSDISK_CDTYPE_1_44_M): Likewise.
44688
	(GRUB_BIOSDISK_CDTYPE_2_88_M): Likewise.
44689
	(GRUB_BIOSDISK_CDTYPE_HARDDISK): Likewise.
44690
	(GRUB_BIOSDISK_CDTYPE_MASK): Likewise.
44691
	(grub_biosdisk_cdrp): New structure.
44692
	(grub_biosdisk_get_cdinfo_int13_extensions): New function.
44693
44694
	* include/grub/i386/pc/kernel.h (grub_boot_drive): Export this variable.
44695
44696
	* kern/i386/pc/init.c (make_install_device): Don't use (cdN) as root
44697
	device.
44698
44699
	* kern/i386/pc/startup.S (grub_biosdisk_get_cdinfo_int13_extensions):
44700
	New function.
44701
44702
2008-03-20  Robert Millan  <rmh@aybabtu.com>
44703
44704
	Remove 2 TiB limit in ata.mod.
44705
	* disk/ata.c (grub_ata_device): Promote `size' to grub_uint64_t.
44706
	(grub_ata_dumpinfo): Print sector count with 0x%llx.
44707
	(grub_ata_identify): Interpret `&info16[100]' as a pointer to
44708
	grub_uint64_t instead of grub_uint32_t.
44709
44710
2008-03-05  Bean  <bean123ch@gmail.com>
44711
44712
	* loader/i386/pc/multiboot.c (grub_multiboot_get_bootdev): New function.
44713
	(grub_multiboot): Set boot device.
44714
44715
	* boot/i386/pc/lnxboot.S (real_code_2): Set %dh to 0xFF.
44716
44717
2008-03-02  Bean  <bean123ch@gmail.com>
44718
44719
	* fs/reiserfs.c (grub_reiserfs_read_symlink): Add 0 at the end of
44720
	symlink_buffer.
44721
44722
2008-03-01  Yoshinori K. Okuji  <okuji@enbug.org>
44723
44724
	* DISTLIST: Added docs/fdl.texi, docs/grub.texi, docs/mdate-sh and
44725
	texinfo.tex.
44726
44727
	* docs/grub.texi: New file. Copied from GRUB Legacy, and slightly
44728
	modified.
44729
44730
	* docs/fdl.texi: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
44731
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
44732
	* docs/mdate-sh: New file. Copied from gnulib.
44733
	* docs/texinfo.tex: Likewise.
44734
44735
	* config.guess: Updated from gnulib.
44736
	* install-sh: Likewise.
44737
44738
2008-02-28  Robert Millan  <rmh@aybabtu.com>
44739
44740
	* conf/i386-linuxbios.rmk (pkglib_MODULES): Add aout.mod.
44741
	(aout_mod_SOURCES): New variable.
44742
	(aout_mod_CFLAGS): Likewise.
44743
	(aout_mod_LDFLAGS): Likewise.
44744
44745
	* conf/i386-ieee1275.rmk: Likewise.
44746
44747
2008-02-28  Robert Millan  <rmh@aybabtu.com>
44748
44749
	* util/update-grub.in: Reorganise terminal validity check.  Accept
44750
	`ieee1275:console' (OLPC) and `*:gfxterm' as valid too.
44751
	Based on suggestion by Franklin PIAT.
44752
44753
2008-02-28  Fabian Greffrath  <greffrath@leat.rub.de>
44754
44755
	* include/grub/util/getroot.h (grub_util_check_block_device): Export new
44756
	function.
44757
	* util/getroot.c (grub_util_check_block_device): New function that
44758
	returns the given argument if it is a block device and returns NULL else.
44759
	* util/grub-probe.c (argument_is_device): New variable.
44760
	(probe): Promote device_name from a variable to an argument. Receive
44761
	device_name from grub_util_check_block_device() if path is NULL and from
44762
	grub_guess_root_device() else. Do not free() device_name anymore.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
44763
	(options): Introduce new parameter '-d, --device'.
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
44764
	(main): Add description of the new parameter to the help screen.
44765
	Rename path variable to argument. Set argument_is_device if the '-d'
44766
	option is given. Pass argument to probe() depending on
44767
	argument_is_device.
44768
44769
2008-02-24  Bean  <bean123ch@gmail.com>
44770
44771
	* fs/iso9660.c (GRUB_ISO9660_VOLDESC_BOOT): New macro.
44772
	(GRUB_ISO9660_VOLDESC_PRIMARY): Likewise.
44773
	(GRUB_ISO9660_VOLDESC_SUPP): Likewise.
44774
	(GRUB_ISO9660_VOLDESC_PART): Likewise.
44775
	(GRUB_ISO9660_VOLDESC_END): Likewise.
44776
	(grub_iso9660_primary_voldesc): New member escape.
44777
	(grub_iso9660_data): New member joliet.
44778
	(grub_iso9660_convert_string): New function.
44779
	(grub_iso9660_mount): Detect joliet extension.
44780
	(grub_iso9660_iterate_dir): Convert filename when joliet is detected.
44781
	(grub_iso9660_iso9660_label): Likewise.
44782
44783
	* conf/common.rmk (pkgdata_MODULES): Add udf.mod.
44784
	(grub_setup_SOURCES): Add fs/udf.c.
44785
	(grub_fstest_SOURCES): Likewise.
44786
	(udf_mod_SOURCES): New variable.
44787
	(udf_mod_CFLAGS): Likewise.
44788
	(udf_mod_LDFLAGS): Likewise.
44789
44790
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/udf.c.
44791
	(grub_emu_SOURCES): Likewise.
44792
44793
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
44794
44795
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
44796
44797
	* conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
44798
44799
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
44800
44801
	* fs/udf.c: New file.
44802
44803
2008-02-24  Robert Millan  <rmh@aybabtu.com>
44804
44805
	* conf/i386-efi.rmk (normal/function.c_DEPENDENCIES)
44806
	(normal/lexer.c_DEPENDENCIES): New variables.
44807
	* conf/i386-ieee1275.rmk (normal/function.c_DEPENDENCIES)
44808
	(normal/lexer.c_DEPENDENCIES): Likewise.
44809
	* conf/i386-linuxbios.rmk (normal/function.c_DEPENDENCIES)
44810
	(normal/lexer.c_DEPENDENCIES): Likewise.
44811
	* conf/i386-pc.rmk (normal/function.c_DEPENDENCIES)
44812
	(normal/lexer.c_DEPENDENCIES): Likewise.
44813
	* conf/powerpc-ieee1275.rmk (normal/function.c_DEPENDENCIES)
44814
	(normal/lexer.c_DEPENDENCIES): Likewise.
44815
	* conf/sparc64-ieee1275.rmk (normal/function.c_DEPENDENCIES)
44816
	(normal/lexer.c_DEPENDENCIES): Likewise.
44817
44818
2008-02-23  Robert Millan  <rmh@aybabtu.com>
44819
44820
	* partmap/gpt.c (grub_gpt_magic): Add `0x' qualifier to each member,
44821
	since they were intended to be in hex.  This didn't break previously
44822
	because of a bug in gpt_partition_map_iterate() (see below).
44823
44824
	(gpt_partition_map_iterate): Replace `grub_memcmp' with `! grub_memcmp'
44825
	when checking the validity of GPT header.
44826
	Remove `partno', since it always provides the same information as `i'.
44827
44828
2008-02-21  Yoshinori K. Okuji  <okuji@enbug.org>
44829
44830
	* include/grub/efi/time.h: Fix a wrong comment.
44831
44832
2008-02-19  Pavel Roskin  <proski@gnu.org>
44833
44834
	* kern/rescue.c (grub_enter_rescue_mode): Improve initial
44835
	message.
44836
44837
2008-02-19  Bean  <bean123ch@gmail.com>
44838
44839
	* conf/i386-pc.rmk (pkglib_MODULES): Add aout.mod _bsd.mod and bsd.mod.
44840
	(aout_mod_SOURCES): New variable.
44841
	(aout_mod_CFLAGS): Likewise.
44842
	(aout_mod_LDFLAGS): Likewise.
44843
	(_bsd_mod_SOURCES): New variable.
44844
	(_bsd_mod_CFLAGS): Likewise.
44845
	(_bsd_mod_LDFLAGS): Likewise.
44846
	(bsd_mod_SOURCES): New variable.
44847
	(bsd_mod_CFLAGS): Likewise.
44848
	(bsd_mod_LDFLAGS): Likewise.
44849
44850
	* include/grub/aout.h: New file.
44851
44852
	* include/grub/i386/loader.h (grub_unix_real_boot): New function.
44853
44854
	* include/grub/i386/bsd.h: New file.
44855
44856
	* include/grub/i386/pc/init.h (grub_get_mmap_entry): Use EXPORT_FUNC
44857
	to make it public.
44858
44859
	* kern/elf.c (grub_elf32_load): Get the physical address after the hook
44860
	function is called, so that it's possible to change it inside the hook.
44861
	(grub_elf64_load): Likewise.
44862
	(grub_elf_file): Don't close the file if elf header is not found.
44863
	(grub_elf_close): Close the file if grub_elf_file fails (The new
44864
	grub_elf_file won't close it).
44865
	(grub_elf32_size): Use NESTED_FUNC_ATTR for nested function calcsize.
44866
	(grub_elf64_size): Likewise.
44867
44868
	* kern/i386/loader.S (grub_unix_real_boot): New function.
44869
44870
	* loader/aout.c: New file.
44871
44872
	* loader/i386/bsd.c: New file.
44873
44874
	* loader/i386/bsd_normal.c: New file.
44875
44876
	* loader/i386/pc/multiboot.c (grub_multiboot): Handle a.out format.
44877
44878
	* loader/multiboot2.c (grub_multiboot2): Reset grub_errno so that it
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
44879
	can test other formats.
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
44880
44881
2008-02-19  Robert Millan  <rmh@aybabtu.com>
44882
44883
	* partmap/gpt.c: Include `<grub/gpt_partition.h>'.
44884
	(grub_gpt_partition_type_empty): Redefine with macro from
44885
	`<grub/gpt_partition.h>'.
44886
	(gpt_partition_map_iterate): Adjust partition type comparison.
44887
44888
	Export `entry' as partmap-specific `part.data' struct.
44889
	(grub_gpt_header, grub_gpt_partentry): Move from here ...
44890
44891
	* include/grub/gpt_partition.h (grub_gpt_header)
44892
	(grub_gpt_partentry): ... to here (new file).
44893
44894
	* util/i386/pc/grub-setup.c: Include `<grub/gpt_partition.h>'.
44895
44896
	(grub_gpt_partition_type_bios_boot): New const variable, defined
44897
	with macro from `<grub/gpt_partition.h>'.
44898
44899
	(setup): Replace `first_start' with `embed_region', which keeps
44900
	track of the embed region (and is partmap-agnostic).
44901
44902
	Replace find_first_partition_start() with find_usable_region(),
44903
	which finds a usable region for embedding using partmap-specific
44904
	knowledge (supports PC/MSDOS and GPT).
44905
44906
	Fix all assumptions that the embed region start at sector 1, using
44907
	`embed_region.start' from now on.  Similarly, use `embed_region.end'
44908
	rather than `first_start' to calculate available size.
44909
44910
	In grub_util_info() message, replace "into after the MBR" with an
44911
	indication of the specific sector our embed region starts at.
44912
44913
2008-02-19  Robert Millan  <rmh@aybabtu.com>
44914
44915
	* DISTLIST: Replace `commands/ieee1275/halt.c' and
44916
	`commands/ieee1275/reboot.c' with `commands/halt.c' and
44917
	`commands/reboot.c'.
44918
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES, reboot_mod_SOURCES)
44919
	(halt_mod_SOURCES): Likewise.
44920
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES, reboot_mod_SOURCES)
44921
	(halt_mod_SOURCES): Likewise.
44922
44923
2008-02-17  Christian Franke  <franke@computer.org>
44924
44925
	* commands/cat.c (grub_cmd_cat): Add break on GRUB_TERM_ESC key.
44926
44927
2008-02-17  Robert Millan  <rmh@aybabtu.com>
44928
44929
	* util/i386/pc/grub-setup.c (setup): In find_first_partition_start(),
44930
	set `first_start' to 0 for non-PC/MSDOS partition maps.
44931
44932
2008-02-16  Robert Millan  <rmh@aybabtu.com>
44933
44934
	* util/i386/pc/grub-setup.c (setup): In find_first_partition_start(),
44935
	do not assume partition map is PC/MSDOS before performing checks that
44936
	are specific to that layout.
44937
44938
2008-02-13  Robert Millan  <rmh@aybabtu.com>
44939
44940
	* conf/i386-linuxbios.rmk (grub_emu_SOURCES): Remove
44941
	`commands/i386/pc/halt.c' and `commands/i386/pc/reboot.c'.
44942
	* kern/i386/linuxbios/init.c (grub_halt, grub_reboot): Remove stubs.
44943
44944
2008-02-13  Yoshinori K. Okuji  <okuji@enbug.org>
44945
44946
	* configure.ac: Only a cosmetic change on the handling of
44947
	-fno-stack-protector.
44948
44949
2008-02-12  Alexandre Boeglin  <alex@boeglin.org>
44950
44951
	* conf/i386-efi.rmk (grub_emu_SOURCES): Replace
44952
	commands/i386/pc/halt.c and reboot.c by commands/halt.c and
44953
	reboot.c.
44954
	(grub_install_SOURCES): Add halt.mod and reboot.mod.
44955
	(halt_mod_SOURCES): New variable.
44956
	(halt_mod_CFLAGS): Likewise.
44957
	(halt_mod_LDFLAGS): Likewise.
44958
	(reboot_mod_SOURCES): Likewise.
44959
	(reboot_mod_CFLAGS): Likewise.
44960
	(reboot_mod_LDFLAGS): Likewise.
44961
44962
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Replace
44963
	commands/ieee1275/halt.c and reboot.c by commands/halt.c and
44964
	reboot.c.
44965
	(halt_mod_SOURCES): Likewise.
44966
	(reboot_mod_SOURCES): Likewise.
44967
44968
	* conf/i386-pc.rmk (grub_emu_SOURCES): Replace
44969
	commands/i386/pc/reboot.c by commands/reboot.c.
44970
	(reboot_mod_SOURCES): Likewise.
44971
44972
	* commands/i386/pc/reboot.c: merge this file ...
44973
44974
	* commands/ieee1275/reboot.c: ... and this file ...
44975
44976
	* commands/reboot.c: ... to this file.
44977
	Add some precompiler directive to include the correct header for
44978
	each machine.
44979
44980
	* commands/ieee1275/halt.c: move this file ...
44981
44982
	* commands/halt.c: ... to here.
44983
	Add some precompiler directive to include the correct header for
44984
	each machine.
44985
44986
	* include/grub/efi/efi.h (grub_reboot): New function declaration.
44987
	(grub_halt): Likewise.
44988
44989
	* kern/efi/efi.c (grub_reboot): New function.
44990
	(grub_halt): Likewise.
44991
44992
2008-02-12  Robert Millan  <rmh@aybabtu.com>
44993
44994
	* util/getroot.c (grub_guess_root_device): Inspect /dev/evms before
44995
	/dev (like it is done for /dev/mapper).  This doesn't provide support
44996
	for EVMS, but at least it is now easy to identify the problem when it
44997
	arises.
44998
44999
2008-02-11  Robert Millan  <rmh@aybabtu.com>
45000
45001
	* util/biosdisk.c (grub_util_biosdisk_open, linux_find_partition)
45002
	(grub_util_biosdisk_get_grub_dev): Check open() exit status by
45003
	comparing it with -1, not 0.
45004
45005
2008-02-10  Robert Millan  <rmh@aybabtu.com>
45006
45007
	* conf/i386-efi.rmk (grub_emu_SOURCES): Add `disk/raid.c' and
45008
	`disk/lvm.c'.
45009
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
45010
	* conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
45011
45012
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Move `disk/raid.c' and
45013
	`disk/lvm.c' to the end of the list.
45014
	* conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
45015
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
45016
45017
2008-02-10  Robert Millan  <rmh@aybabtu.com>
45018
45019
	* kern/main.c (grub_load_normal_mode): Do not reset `grub_errno'.  Call
45020
	grub_print_error() instead.  This will let user know why we're entering
45021
	rescue mode.
45022
	Based on suggestions from Sam Morris.
45023
45024
2008-02-10  Alexandre Boeglin  <alex@boeglin.org>
45025
45026
	* normal/arg.c (grub_arg_parse): If one of the args is "--", call add_arg()
45027
	on remaining N args, instead of "--" arg N times.
45028
45029
2008-02-09  Vesa Jaaskelainen  <chaac@nic.fi>
45030
45031
	* font/manager.c (unknown_glyph): Added variable for unknown glyph.
45032
	(fill_with_default_glyph): Changed to use unknown_glyph for fill
45033
	pattern for unknown glyphs.
45034
45035
2008-02-09  Robert Millan  <rmh@aybabtu.com>
45036
45037
	* configure.ac: Probe for `help2man'.
45038
	* Makefile.in (builddir): New variable.
45039
	(HELP2MAN): Likewise.  Set to `true' when @HELP2MAN@ doesn't provide it,
45040
	or otherwise add a few flags/options to it.
45041
	(install-local): For every executable utility or script that is
45042
	installed, invoke $(HELP2MAN) to install a manpage based on --help
45043
	output.
45044
45045
	* util/i386/pc/grub-install.in: Move down `update-grub_lib' sourcing, so
45046
	that it doesn't prevent --help from working in build tree.
45047
45048
	* util/i386/pc/grub-mkrescue.in (usage): Replace `grub-devel@gnu.org'
45049
	with `bug-grub@gnu.org'.
45050
	* util/powerpc/ieee1275/grub-mkrescue.in (usage): Likewise.
45051
	* util/update-grub.in (usage): New function.
45052
	Implement proper argument check, with support for --help and --version
45053
	(as well as existing -y).
45054
45055
2008-02-09  Christian Franke  <franke@computer.org>
45056
45057
	* commands/cat.c (grub_cmd_cat): Print '\r' as hex to
45058
	avoid overwriting previous output.
45059
	* kern/rescue.c (grub_rescue_cmd_cat): Likewise.
45060
45061
2008-02-09  Robert Millan  <rmh@aybabtu.com>
45062
45063
	* normal/menu.c (run_menu): If timeout is set to zero, don't bother
45064
	drawing the menu.
45065
45066
2008-02-09  Robert Millan  <rmh@aybabtu.com>
45067
45068
	* commands/sleep.c: New file.
45069
	* conf/common.rmk (pkglib_MODULES): Add `commands/sleep.c'.
45070
	(sleep_mod_SOURCES): New variable.
45071
	(sleep_mod_CFLAGS): Likewise.
45072
	(sleep_mod_LDFLAGS): Likewise.
45073
45074
2008-02-09  Robert Millan  <rmh@aybabtu.com>
45075
45076
	* disk/raid.c (grub_raid_scan_device): Add a pair of sanity checks for
45077
	situations in which we can deduce the RAID size and the superblock
45078
	doesn't match it.
45079
45080
2008-02-09  Robert Millan  <rmh@aybabtu.com>
45081
45082
	* disk/lvm.c [GRUB_UTIL] (grub_lvm_memberlist): New function.  Construct
45083
	and return a grub_diskmemberlist_t composed of LVM physical volumes.
45084
	[GRUB_UTIL] (grub_lvm_dev): Add `memberlist' member.
45085
45086
	* disk/raid.c [GRUB_UTIL] (grub_raid_memberlist): New function.  Construct
45087
	and return a grub_diskmemberlist_t composed of physical array members.
45088
	[GRUB_UTIL] (grub_raid_dev): Add `memberlist' member.
45089
45090
	* include/grub/disk.h [GRUB_UTIL] (grub_disk_memberlist): New struct
45091
	prototype.
45092
	[GRUB_UTIL] (struct grub_disk_dev): Add `memberlist' function pointer.
45093
	[GRUB_UTIL] (struct grub_disk_memberlist): New struct declaration.
45094
	[GRUB_UTIL] (grub_disk_memberlist_t): New typedef.
45095
45096
	* util/grub-probe.c (probe): Move partmap probing code from here ...
45097
	(probe_partmap): ... to here.
45098
	(probe): Use probe_partmap() once for the disk we're probing, and
45099
	additionally, when such disk contains a memberlist() struct member,
45100
	once for each disk that is contained in the structure returned by
45101
	memberlist().
45102
45103
2008-02-09  Robert Millan  <rmh@aybabtu.com>
45104
45105
	* util/grub-probe.c (main): When `verbosity > 1', set `debug'
45106
	environment variable to 'all' in order to obtain debug output from
45107
	non-util/ code.
45108
	* util/i386/pc/grub-setup.c (main): Likewise.
45109
45110
2008-02-08  Robert Millan  <rmh@aybabtu.com>
45111
45112
	* disk/raid.c (grub_raid_scan_device): Check for
45113
	`array->device[sb.this_disk.number]' rather than for
45114
	`array->device[sb.this_disk.number]->name', since the latter is not
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45115
	guaranteed to be accessible.
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
45116
45117
2008-02-08  Robert Millan  <rmh@aybabtu.com>
45118
45119
	* disk/raid.c: Update copyright.
45120
	* fs/cpio.c: Likewise.
45121
	* include/grub/raid.h: Likewise.
45122
	* loader/i386/pc/multiboot.c: Likewise.
45123
	* util/hostfs.c: Likewise.
45124
45125
2008-02-08  Robert Millan  <rmh@aybabtu.com>
45126
45127
	* include/grub/raid.h (struct grub_raid_array): Change type of `device'
45128
	to a grub_disk_t array.
45129
	* disk/raid.c (grub_raid_read): Replace `device[x].disk' accesses with
45130
	`device[x]'.
45131
	(grub_raid_scan_device): Replace `device[x].name' accesses with
45132
	`device[x]->name'.  Simplify initialization of `array->device[x]'.
45133
45134
2008-02-08  Robert Millan  <rmh@aybabtu.com>
45135
45136
	* disk/raid.c (grub_raid_open, grub_raid_scan_device): Add a few
45137
	grub_dprintf() calls.
45138
	* kern/disk.c (grub_disk_read): Include grub_errmsg in out of range
45139
	error message.
45140
45141
2008-02-07  Christian Franke  <franke@computer.org>
45142
45143
	* util/hostfs.c (grub_hostfs_open): Use fseeko and ftello
45144
	instead of fseek and ftell to support large files.
45145
	(grub_hostfs_read): Likewise.
45146
45147
2008-02-07  Robert Millan  <rmh@aybabtu.com>
45148
45149
	Patch from Jeroen Dekkers.
45150
	* disk/raid.c (grub_raid_scan_device): Reset `grub_errno' on disk
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45151
	failure, since successfully reading all array members might not be
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
45152
	required.
45153
45154
2008-02-06  Robert Millan  <rmh@aybabtu.com>
45155
45156
	* util/grub-probe.c (probe): Simplify partmap probing (with the
45157
	assumption that the first word up to the underscore equals to
45158
	the module name).
45159
45160
2008-02-06  Christian Franke  <franke@computer.org>
45161
45162
	* fs/cpio.c (grub_cpio_find_file): Return GRUB_ERR_NONE
45163
	(and set *ofs = 0) instead of GRUB_ERR_FILE_NOT_FOUND on
45164
	last block of a cpio or tar stream.
45165
	Check for "TRAILER!!!" instead of any empty data
45166
	block to detect last block of a cpio stream.
45167
	(grub_cpio_dir): Fix constness of variable np.
45168
	(grub_cpio_open): Return GRUB_ERR_FILE_NOT_FOUND if
45169
	cpio or tar trailer is detected.  This fixes a crash
45170
	on open of a non existing file.
45171
45172
2008-02-05  Bean  <bean123ch@gmail.com>
45173
45174
	* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Get physical
45175
	address of entry.
45176
	(grub_multiboot_load_elf64): Likewise.
45177
	(grub_multiboot): Initialize mbi structure.
45178
45179
	* util/grub-fstest.c: Don't include unused header file script.h.
45180
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45181
	* conf/common.rmk (grub-fstest.c_DEPENDENCIES): Move to the beginning
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
45182
	of file.
45183
	(grub_fstest_SOURCES): Likewise.
45184
45185
2008-02-05  Robert Millan  <rmh@aybabtu.com>
45186
45187
	* include/grub/term.h (GRUB_TERM_LEFT, GRUB_TERM_RIGHT)
45188
	(GRUB_TERM_UP, GRUB_TERM_DOWN, GRUB_TERM_HOME, GRUB_TERM_END)
45189
	(GRUB_TERM_DC, GRUB_TERM_PPAGE, GRUB_TERM_NPAGE, GRUB_TERM_ESC)
45190
	(GRUB_TERM_TAB, GRUB_TERM_BACKSPACE): New macros.
45191
45192
	* kern/i386/pc/startup.S: Include `<grub/term.h>'.
45193
	(translation_table): Replace hardcoded values with macros
45194
	provided by `<grub/term.h>'.
45195
45196
	* term/i386/pc/at_keyboard.c: Include `<grub/term.h>'.
45197
	(keyboard_map): Correct/add a few values, with macros provided
45198
	by `<grub/term.h>'.
45199
	(keyboard_map_shift): Zero values that don't differ from their
45200
	`keyboard_map' equivalents.
45201
	(grub_console_checkkey): Optimize KEYBOARD_STATUS_CAPS_LOCK toggling.
45202
	Discard the second scan code that is always sent by Caps lock.
45203
	Only use `keyboard_map_shift' when it provides a non-zero value,
45204
	otherwise fallback to `keyboard_map'.
45205
45206
2008-02-04  Bean  <bean123ch@gmail.com>
45207
45208
	* Makefile.in (enable_grub_fstest): New variable.
45209
45210
	* conf/common.rmk (grub_fstest_init.lst): New rule.
45211
	(grub_fstest_init.h): Likewise.
45212
	(grub_fstest_init.c): Likewise.
45213
	(util/grub-fstest.c_DEPENDENCIES): New variable.
45214
	(grub_fstest_SOURCES): Likewise.
45215
45216
	* configure.ac (enable_grub_fstest): Check for --enable-grub-fstest.
45217
45218
	* util/grub-fstest.c: New file.
45219
45220
2008-02-03  Yoshinori K. Okuji  <okuji@enbug.org>
45221
45222
	Make grub-setup handle a separate root device.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45223
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
45224
	* util/i386/pc/grub-setup.c (setup): Always open the root device,
45225
	so that the root device can be compared with the destination
45226
	device.
45227
	When embedding the core image, if the root and destination devices
45228
	are different, set ROOT_DRIVE to ROOT_DEV->DISK->ID. Otherwise, to
45229
	0xFF.
45230
	When not embedding, set ROOT_DRIVE to 0xFF.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45231
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
45232
2008-02-03  Yoshinori K. Okuji  <okuji@enbug.org>
45233
45234
	Add support for having a grub directory in a different drive. This
45235
	is still only the data handling part.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45236
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
45237
	* kern/i386/pc/startup.S (multiboot_trampoline): Set %dh to 0xFF.
45238
	(codestart): Save %dh in GRUB_ROOT_DRIVE.
45239
	(grub_root_drive): New variable.
45240
45241
	* kern/i386/pc/init.c (make_install_device): Use GRUB_ROOT_DRIVE
45242
	instead of GRUB_BOOT_DRIVE to construct a device name. Set
45243
	GRUB_ROOT_DRIVE to GRUB_BOOT_DRIVE if it is 0xFF, otherwise use it
45244
	as it was.
45245
45246
	* include/grub/i386/pc/kernel.h (grub_root_drive): New prototype.
45247
45248
	* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_ROOT_DRIVE): New
45249
	macro.
45250
	(GRUB_BOOT_MACHINE_DRIVE_CHECK): Set to 0x4f.
45251
45252
	* boot/i386/pc/pxeboot.S (_start): Set %dh to 0xFF. For now, this
45253
	is bogus, because PXE booting does not specify any drive
45254
	correctly.
45255
45256
	* boot/i386/pc/lnxboot.S (reg_edx): Set the second byte to 0xFF. I
45257
	am not sure if this is really correct.
45258
45259
	* boot/i386/pc/cdboot.S: Set %dh to 0xFF, because the root drive
45260
	is always identical to the boot drive when booting from a CD.
45261
45262
	* boot/i386/pc/boot.S (MOV_MEM_TO_AL): Removed. Not needed any
45263
	longer.
45264
	(root_drive): New variable.
45265
	(real_start): Unconditionally set %dh to ROOT_DRIVE.
45266
	(setup_sectors): Push %dx right after popping it, because %dh will
45267
	be modified later.
45268
	(copy_buffer): Restore %dx.
45269
1.1.9 by Robert Millan
Import upstream version 1.96+20080203
45270
2008-02-03  Robert Millan  <rmh@aybabtu.com>
45271
45272
	* util/i386/pc/grub-mkrescue.in: Rewrite most of image generation to
45273
	use `cdboot.img' for cdrom images.
45274
45275
2008-02-03  Robert Millan  <rmh@aybabtu.com>
45276
45277
	* util/grub.d/00_header.in: Issue scripting commands for GRUB to
45278
	only setup gfxterm when `font' command has succeeded.
45279
45280
2008-02-03  Robert Millan  <rmh@aybabtu.com>
45281
45282
	* loader/multiboot_loader.c [GRUB_MACHINE_LINUXBIOS]
45283
	(grub_rescue_cmd_multiboot_loader)
45284
	(grub_rescue_cmd_module_loader): Enable multiboot1 calls.
45285
45286
2008-02-03  Pavel Roskin  <proski@gnu.org>
45287
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
45288
	* kern/i386/pc/startup.S (grub_chainloader_real_boot): Pop
1.1.9 by Robert Millan
Import upstream version 1.96+20080203
45289
	%edx and %esi from stack only after grub_gate_a20() is called.
45290
	grub_gate_a20() clobbers %edx.
45291
45292
2008-02-03  Yoshinori K. Okuji  <okuji@enbug.org>
45293
45294
	* configure.ac (AC_INIT): Bumped to 1.96.
45295
45296
	* DISTLIST: Added boot/i386/pc/cdboot.S, bus/pci.c,
45297
	commands/lspci.c,disk/memdisk.c, include/grub/pci.h,
45298
	include/grub/i386/pc/pci.h, video/readers/jpeg.c, and
45299
	video/readers/png.c.
45300
1.3.1 by Mario Limonciello
Import upstream version 1.96+20080512
45301
2008-02-03  Bean  <bean123ch@gmail.com>
1.1.9 by Robert Millan
Import upstream version 1.96+20080203
45302
45303
	* conf/i386-pc.rmk (pkglib_IMAGES): Add cdboot.img.
45304
	(cdboot_img_SOURCES): New variable.
45305
	(cdboot_img_ASFLAGS): New variable.
45306
	(cdboot_img_LDFLAGS): New variable.
45307
45308
	* boot/i386/pc/cdboot.S: New file.
45309
45310
	* disk/i386/pc/biosdisk.c (cd_start): New variable.
45311
	(cd_count): Likewise.
45312
	(grub_biosdisk_get_drive): Add support for cd device.
45313
	(grub_biosdisk_call_hook): Likewise.
45314
	(grub_biosdisk_iterate): Likewise.
45315
	(grub_biosdisk_open): Likewise.
45316
	(GRUB_BIOSDISK_CDROM_RETRY_COUNT): New macro.
45317
	(grub_biosdisk_rw): Support reading from cd device.
45318
	(GRUB_MOD_INIT): Iterate cd devices.
45319
45320
	* include/grub/i386/pc/biosdisk.h (GRUB_BIOSDISK_FLAG_CDROM): New macro.
45321
	(GRUB_BIOSDISK_MACHINE_CDROM_START): Likewise.
45322
	(GRUB_BIOSDISK_MACHINE_CDROM_END): Likewise.
45323
45324
	* kern/i386/pc/init.c (make_install_device): Check for cd device.
45325
45326
2008-02-02  Robert Millan  <rmh@aybabtu.com>
45327
45328
	* commands/read.c: New file.
45329
	* conf/common.rmk (pkglib_MODULES): Add `commands/read.c'.
45330
	(read_mod_SOURCES): New variable.
45331
	(read_mod_CFLAGS): Likewise.
45332
	(read_mod_LDFLAGS): Likewise.
45333
45334
2008-02-02  Robert Millan  <rmh@aybabtu.com>
45335
45336
	* normal/main.c (grub_normal_execute): Check for `menu->size' when
45337
	determining whether menu has to be displayed.
45338
45339
2008-02-02  Marco Gerards  <marco@gnu.org>
45340
45341
	* bus/pci.c: New file.
45342
45343
	* include/grub/pci.h: Likewise.
45344
45345
	* include/grub/i386/pc/pci.h: Likewise.
45346
45347
	* commands/lspci.c: Likewise.
45348
45349
	* conf/i386-pc.rmk (pkglib_MODULES): Add `pci.mod' and
45350
	`lspci.mod'.
45351
	(pci_mod_SOURCES): New variable.
45352
	(pci_mod_CFLAGS): Likewise.
45353
	(pci_mod_LDFLAGS): Likewise.
45354
	(lspci_mod_SOURCES): Likewise.
45355
	(lspci_mod_CFLAGS): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45356
	(lspci_mod_LDFLAGS): Likewise.
1.1.9 by Robert Millan
Import upstream version 1.96+20080203
45357
45358
2008-02-02  Bean  <bean123ch@gmail.com>
45359
45360
	* fs/ufs.c (INODE_BLKSZ): Fix incorrect value.
45361
	(grub_ufs_get_file_block): Fix indirect block calculation problem.
45362
45363
	* fs/xfs.c (grub_xfs_sblock): New member log2_dirblk.
45364
	(grub_xfs_btree_node): New structure.
45365
	(grub_xfs_btree_root): New structure.
45366
	(grub_xfs_inode): New members nblocks, extsize, nextents and btree.
45367
	(GRUB_XFS_EXTENT_OFFSET): Use exts instead of inode->data.extents.
45368
	(GRUB_XFS_EXTENT_BLOCK): Likewise.
45369
	(GRUB_XFS_EXTENT_SIZE): Likewise.
45370
	(grub_xfs_read_block): Support btree format type.
45371
	(grub_xfs_iterate_dir): Use NESTED_FUNC_ATTR in call_hook.
45372
	Use directory block as basic unit.
45373
45374
	* fs/fshelp.c (grub_fshelp_read_file): Bug fix for sparse block.
45375
45376
	* aclocal.m4 (grub_i386_CHECK_REGPARM_BUG): Define NESTED_FUNC_ATTR as
45377
	__attribute__ ((__regparm__ (1))).
45378
45379
2008-02-01  Robert Millan  <rmh@aybabtu.com>
45380
45381
	Correct a mistake in previous commit.
45382
45383
	* conf/i386-pc.rmk (normal/execute.c_DEPENDENCIES): Move to the
45384
	top.
45385
	(normal/command.c_DEPENDENCIES): New variable.
45386
45387
2008-02-01  Robert Millan  <rmh@aybabtu.com>
45388
45389
	* conf/i386-efi.rmk (normal/execute.c_DEPENDENCIES): Move to the
45390
	top.
45391
	(normal/command.c_DEPENDENCIES): New variable.
45392
	(grub-emu_DEPENDENCIES, normal_mod_DEPENDENCIES): Remove variables.
45393
	* conf/i386-ieee1275.rmk: Likewise.
45394
	* conf/i386-linuxbios.rmk: Likewise.
45395
	* conf/i386-pc.rmk: Likewise.
45396
	* conf/sparc64-ieee1275.rmk: Likewise.
45397
	* conf/powerpc-ieee1275.rmk: Likewise.
45398
	(grub_emu_SOURCES): Add `fs/fshelp.c'.
45399
45400
	* genmk.rb: Add `$(#{src}_DEPENDENCIES)' in targets that require it.
45401
45402
2008-02-01  Robert Millan  <rmh@aybabtu.com>
45403
45404
	* kern/disk.c (grub_disk_read, grub_disk_write): Add grub_dprintf()
45405
	call at beginning of function.
45406
45407
2008-01-31  Pavel Roskin  <proski@gnu.org>
45408
45409
	* util/powerpc/ieee1275/grub-mkrescue.in: New file.
45410
	* conf/powerpc-ieee1275.rmk (bin_SCRIPTS): New variable.
45411
	(grub_mkrescue_SOURCES): Likewise.
45412
	* DISTLIST: Add util/powerpc/ieee1275/grub-mkrescue.in.
45413
45414
2008-01-30  Robert Millan  <rmh@aybabtu.com>
45415
45416
	* conf/i386-pc.rmk (sbin_UTILITIES): Remove `grub-probe'.
45417
	(util/grub-probe.c_DEPENDENCIES, grub_probe_SOURCES): Moved from here ...
45418
	* conf/common.rmk (util/grub-probe.c_DEPENDENCIES)
45419
	(grub_probe_SOURCES): ... to here.
45420
45421
	* conf/i386-efi.rmk (sbin_UTILITIES): Remove `grub-probe'.
45422
	(util/grub-probe.c_DEPENDENCIES, grub_probe_SOURCES): Remove.
45423
	* conf/i386-ieee1275.rmk: Likewise.
45424
	* conf/i386-linuxbios.rmk: Likewise.
45425
	* conf/powerpc-ieee1275.rmk: Likewise.
45426
45427
2008-01-30  Tristan Gingold  <gingold@free.fr>
45428
45429
	* kern/rescue.c: Silently accept empty lines.
45430
45431
2008-01-29  Bean  <bean123ch@gmail.com>
45432
45433
	* boot/i386/pc/lnxboot.S (data_start): Code cleanup.
45434
	(real_code_2): Code cleanup and change comment style.
45435
	(move_memory): Avoid using 32-bit address mode.
45436
45437
2008-01-29  Bean  <bean123ch@gmail.com>
45438
45439
	* conf/i386-pc.rmk (pkglib_MODULES): Add `png.mod'.
45440
	(png_mod_SOURCES): New variable.
45441
	(png_mod_CFLAGS): Likewise.
45442
	(png_mod_LDFLAGS): Likewise.
45443
45444
	* video/readers/png.c: New file.
45445
45446
2008-01-28  Robert Millan  <rmh@aybabtu.com>
45447
45448
	* include/grub/i386/linuxbios/kernel.h (GRUB_MOD_GAP): New macro.
45449
	* kern/powerpc/ieee1275/init.c (grub_arch_modules_addr): Remove
45450
	`ifndef GRUB_MOD_GAP' hack.
45451
	* util/elf/grub-mkimage.c (add_segments): Likewise.
45452
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
45453
2008-01-27  Robert Millan  <rmh@aybabtu.com>
45454
45455
	* kern/powerpc/ieee1275/init.c (grub_arch_modules_addr): Skip
45456
	`GRUB_MOD_GAP' for platforms in which it's not defined.
45457
	* util/elf/grub-mkimage.c (add_segments): Likewise.
45458
45459
2008-01-27  Robert Millan  <rmh@aybabtu.com>
45460
45461
	Get grub-emu to build again (including parallel builds).
45462
45463
	* conf/i386-pc.rmk (util/grub-emu.c_DEPENDENCIES): Remove variable.
45464
	Split into ...
45465
	(util/grub-emu.c_DEPENDENCIES): ... this, ...
45466
	(normal/execute.c_DEPENDENCIES): ... this, ...
45467
	(grub-emu_DEPENDENCIES): ... and this.
45468
45469
	* conf/i386-efi.rmk: Likewise.
45470
	* conf/i386-linuxbios.rmk: Likewise.
45471
	* conf/i386-ieee1275.rmk: Likewise.
45472
	* conf/powerpc-ieee1275.rmk: Likewise.
45473
	(grub_emu_SOURCES): Remove duplicated `kern/file.c'.
45474
45475
2008-01-27  Robert Millan  <rmh@aybabtu.com>
45476
45477
	* NEWS: Add a few items.
45478
45479
2008-01-27  Robert Millan  <rmh@aybabtu.com>
45480
45481
	Fix parallel builds with grub-emu.  Based on earlier commit for
45482
	grub-probe and grub-setup.
45483
45484
	* conf/i386-pc.rmk (grub-emu_DEPENDENCIES): Renamed to ...
45485
	(util/grub-emu.c_DEPENDENCIES): ... this.
45486
	* conf/i386-efi.rmk (grub-emu_DEPENDENCIES): Renamed to ...
45487
	(util/grub-emu.c_DEPENDENCIES): ... this.
45488
	* conf/i386-linuxbios.rmk (grub-emu_DEPENDENCIES): Renamed to ...
45489
	(util/grub-emu.c_DEPENDENCIES): ... this.
45490
	* conf/i386-ieee1275.rmk (grub-emu_DEPENDENCIES): Renamed to ...
45491
	(util/grub-emu.c_DEPENDENCIES): ... this.
45492
	* conf/powerpc-ieee1275.rmk (grub-emu_DEPENDENCIES): Renamed to ...
45493
	(util/grub-emu.c_DEPENDENCIES): ... this.
45494
45495
2008-01-27  Pavel Roskin  <proski@gnu.org>
45496
45497
	* include/grub/powerpc/ieee1275/kernel.h: Introduce GRUB_MOD_GAP
45498
	to create a gap between _end and the modules added to the image
45499
	with grub-mkrescue.  That fixes "CLAIM failed" on PowerMAC.
45500
	* kern/powerpc/ieee1275/init.c: Use GRUB_MOD_GAP.
45501
	* util/elf/grub-mkimage.c (add_segments): Likewise.
45502
45503
2008-01-26  Pavel Roskin  <proski@gnu.org>
45504
45505
	* kern/dl.c (grub_dl_load): Don't abort if prefix is not set,
45506
	just return an error.
45507
45508
2008-01-26  Bean  <bean123ch@gmail.com>
45509
45510
	* fs/reiserfs.c (grub_fshelp_node): New member next_offset.
45511
	(grub_reiserfs_get_item): Save offset of the next item.
45512
	(grub_reiserfs_iterate_dir): Use next_offset to find next item.
45513
45514
2008-01-25  Robert Millan  <rmh@aybabtu.com>
45515
45516
	* conf/i386-pc.rmk (grub_setup_SOURCES, grub_emu_SOURCES): Regroup to
45517
	make all filesystem sources appear together (possibly fixing omissions
45518
	while at it).
45519
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
45520
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
45521
	* conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
45522
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
45523
45524
	* conf/i386-pc.rmk (grub_probe_SOURCES): Likewise.  Additionally,
45525
	add `kern/file.c'.
45526
	* conf/i386-efi.rmk (grub_probe_SOURCES): Likewise.
45527
	* conf/i386-ieee1275.rmk (grub_probe_SOURCES): Likewise.
45528
	* conf/i386-linuxbios.rmk (grub_probe_SOURCES): Likewise.
45529
	* conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Likewise.
45530
45531
	* util/grub-probe.c: Include `<grub/file.h>' and `<sys/stat.h>'.
45532
	(probe): Add a sanity check to make sure of our ability to read
45533
	requested files when probing for filesystem type.
45534
45535
	* genmk.rb: Update copyright year (2007).
45536
45537
	* include/grub/fs.h (grub_fat_init, grub_fat_fini, grub_ext2_init)
45538
	(grub_ext2_fini, grub_ufs_init, grub_ufs_fini, grub_minix_init)
45539
	(grub_minix_fini, grub_hfs_init, grub_hfs_fini, grub_jfs_init)
45540
	(grub_jfs_fini, grub_xfs_init, grub_xfs_fini, grub_affs_init)
45541
	(grub_affs_fini, grub_sfs_init, grub_sfs_fini, grub_iso9660_init)
45542
	: Remove function prototypes.
45543
45544
2008-01-25  Robert Millan  <rmh@aybabtu.com>
45545
45546
	Revert my previous commits (based on wrong assumption of how grub_errno
45547
	works).
45548
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45549
	* kern/disk.c (grub_disk_open): Stop resetting grub_errno.
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
45550
	* kern/file.c (grub_file_open): Likewise.
45551
45552
2008-01-24  Pavel Roskin  <proski@gnu.org>
45553
45554
	* include/grub/ieee1275/ieee1275.h: Introduce flag for firmwares
45555
	that hang if GRUB tries to setup colors.
45556
	* term/ieee1275/ofconsole.c (grub_ofconsole_init): Don't set
45557
	colors for firmwares that don't support it.
45558
	* kern/powerpc/ieee1275/cmain.c (grub_ieee1275_set_flag):
45559
	Recognize Open Hack'Ware, set flags to work around its
45560
	limitations.
45561
45562
2008-01-24  Robert Millan  <rmh@aybabtu.com>
45563
45564
	* kern/file.c (grub_file_open): Do not account previous failures of
45565
	unrelated functions when grub_errno is checked for.
45566
	Reported by Oleg Strikov.
45567
45568
2008-01-24  Bean  <bean123ch@gmail.com>
45569
45570
	* fs/ufs.c (GRUB_UFS_VOLNAME_LEN): New macro.
45571
	(grub_ufs_sblock): New member volume name.
45572
	(grub_ufs_find_file): Fix string copy bug.
45573
	(grub_ufs_label): Implement this function properly.
45574
45575
	* fs/hfs.c (grub_hfs_cnid_type): New enum.
45576
	(grub_hfs_iterate_records): Use the correct file number for extents
45577
	and catalog file. Fix problem in next index calculation.
45578
	(grub_hfs_find_node): Replace recursive function call with loop.
45579
	(grub_hfs_iterate_dir): Replace recursive function call with loop.
45580
45581
2008-01-23  Robert Millan  <rmh@aybabtu.com>
45582
45583
	* include/grub/i386/ieee1275/loader.h: Include `<grub/types.h>',
45584
	`<grub/symbol.h>' and `<grub/multiboot.h>'.
45585
	(grub_multiboot2_real_boot): New function prototype.
45586
45587
	* include/grub/i386/pc/memory.h: Include `<grub/machine/machine.h>'.
45588
	[!GRUB_MACHINE_IEEE1275] (grub_lower_mem, grub_upper_mem): Disable.
45589
45590
	* kern/i386/ieee1275/init.c (grub_os_area_addr)
45591
	(grub_os_area_size, grub_lower_mem, grub_upper_mem): Remove variables.
45592
45593
2008-01-23  Robert Millan  <rmh@aybabtu.com>
45594
45595
	* kern/mm.c (grub_mm_init_region): Replace grub_dprintf() call with
45596
	#ifdef'ed out grub_printf().
45597
45598
2008-01-23  Robert Millan  <rmh@aybabtu.com>
45599
45600
	* term/i386/pc/at_keyboard.c (grub_keyboard_isr): #ifdef out
45601
	grub_dprintf calls, since they make "debug=all" mode unusable.
45602
	(grub_console_checkkey): Likewise.
45603
45604
2008-01-23  Robert Millan  <rmh@aybabtu.com>
45605
45606
	* conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add
45607
	`term/i386/pc/at_keyboard.c'.
45608
	(pkglib_MODULES): Add `serial.mod'.
45609
	(serial_mod_SOURCES): New variable.
45610
	(serial_mod_CFLAGS): Likewise.
45611
	(serial_mod_LDFLAGS): Likewise.
45612
45613
	* include/grub/i386/ieee1275/console.h: Add `<grub/symbol.h>'.  Remove
45614
	`<grub/powerpc/ieee1275/console.h>'.
45615
	(grub_keyboard_controller_init): New function prototype.
45616
	(grub_console_checkkey): Likewise.
45617
	(grub_console_getkey): Likewise.
45618
45619
	* kern/powerpc/ieee1275/init.c (grub_machine_init): Initialize AT
45620
	keyboard on i386.
45621
45622
	* term/ieee1275/ofconsole.c (grub_ofconsole_term): On i386, use
45623
	grub_ofconsole_checkkey() and grub_ofconsole_getkey() for input.
45624
45625
2008-01-23  Robert Millan  <rmh@aybabtu.com>
45626
45627
	* kern/i386/pc/init.c (make_install_device): When memdisk image is
45628
	present, "(memdisk)/boot/grub" becomes the default prefix.
45629
45630
	* util/i386/pc/grub-mkrescue.in: Switch to a minimal core.img plus
45631
	a memdisk tarball with all the modules.  Add --overlay=DIR option that
45632
	allows users to overlay additional files into the image.
45633
45634
2008-01-23  Robert Millan  <rmh@aybabtu.com>
45635
45636
	* conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add `machine/loader.h'
45637
	and `machine/memory.h'.
45638
	(pkglib_MODULES): Add `multiboot.mod' and `_multiboot.mod'.
45639
	(_multiboot_mod_SOURCES): New variable.
45640
	(_multiboot_mod_CFLAGS): Likewise.
45641
	(_multiboot_mod_LDFLAGS): Likewise.
45642
	(multiboot_mod_SOURCES): Likewise.
45643
	(multiboot_mod_CFLAGS): Likewise.
45644
	(multiboot_mod_LDFLAGS): Likewise.
45645
45646
	* include/grub/i386/ieee1275/loader.h: New file.
45647
45648
	* include/grub/i386/ieee1275/machine.h: Likewise.
45649
45650
	* include/grub/i386/ieee1275/memory.h: Likewise.
45651
45652
	* include/grub/i386/pc/init.h (grub_os_area_addr): Remove (redundant)
45653
	variable declaration.
45654
	(grub_os_area_size): Likewise.
45655
45656
	* kern/i386/ieee1275/init.c (grub_os_area_addr, grub_os_area_size)
45657
	(grub_lower_mem, grub_upper_mem): New variables.
45658
	(grub_stop_floppy): New function (just to make
45659
	grub_multiboot2_real_boot() happy).
45660
45661
	* kern/i386/ieee1275/startup.S: Include `<grub/machine/memory.h>',
45662
	`<grub/cpu/linux.h>', `<multiboot.h>' and `<multiboot2.h>'.
45663
	(grub_stop): New function.
45664
	Include `"../realmode.S"' and `"../loader.S"'.
45665
45666
	* loader/multiboot_loader.c: Include `<grub/machine/machine.h>'.
45667
	Replace `__i386__' #ifdefs with `GRUB_MACHINE_PCBIOS'.
45668
45669
	* loader/powerpc/ieee1275/multiboot2.c (grub_mb2_arch_boot): On i386,
45670
	rely on grub_multiboot2_real_boot() for final boot.
45671
45672
2008-01-22  Robert Millan  <rmh@aybabtu.com>
45673
45674
	* disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): When
45675
	`GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY' flag is set, skip any
45676
	device that doesn't look like an SD card.
45677
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): Add
45678
	`GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY' flag.
45679
	* kern/powerpc/ieee1275/cmain.c (grub_ieee1275_set_flag): Detect
45680
	OLPC laptop, and set `GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY' when
45681
	found.
45682
45683
2008-01-22  Robert Millan  <rmh@aybabtu.com>
45684
45685
	* kern/powerpc/ieee1275/init.c (grub_claim_heap): Add sanity check to
45686
	avoid claiming over our own code.
45687
45688
2008-01-22  Bean  <bean123ch@gmail.com>
45689
45690
	* conf/i386-pc.rmk (pkglib_MODULES): Add `jpeg.mod'.
45691
	(jpeg_mod_SOURCES): New variable.
45692
	(jpeg_mod_CFLAGS): Likewise.
45693
	(jpeg_mod_LDFLAGS): Likewise.
45694
45695
	* video/readers/jpeg.c : New file.
45696
45697
2008-01-22  Bean  <bean123ch@gmail.com>
45698
45699
	* fs/cpio.c (grub_cpio_find_file): Return GRUB_ERR_FILE_NOT_FOUND when
45700
	there are no more items.
45701
45702
2008-01-21  Robert Millan  <rmh@aybabtu.com>
45703
45704
	* kern/mm.c (grub_mm_init_region): Improve debug message.
45705
45706
2008-01-21  Robert Millan  <rmh@aybabtu.com>
45707
45708
	* conf/i386-pc.rmk (GRUB_MEMORY_MACHINE_LINK_ADDR): New variable.
45709
	(kernel_img_LDFLAGS): Use `GRUB_MEMORY_MACHINE_LINK_ADDR' as link
45710
	address.
45711
	(grub_mkimage_CFLAGS): Propagate `GRUB_MEMORY_MACHINE_LINK_ADDR' as
45712
	a C macro.
45713
	* include/grub/i386/pc/memory.h (GRUB_MEMORY_MACHINE_UPPER): New macro.
45714
	Indicates start of upper memory.
45715
	* util/i386/pc/grub-mkimage.c: Include `<grub/machine/memory.h>'.
45716
	(generate_image): Abort when image size is big enough to corrupt
45717
	upper memory.
45718
45719
	* include/grub/i386/pc/vga.h: Include `<grub/machine/memory.h>'.
45720
	(GRUB_MEMORY_MACHINE_VGA_ADDR): Alias for `GRUB_MEMORY_MACHINE_UPPER'.
45721
	* term/i386/pc/vga.c (VGA_MEM): Use `GRUB_MEMORY_MACHINE_VGA_ADDR'
45722
	instead of hardcoding 0xA0000.
45723
	* video/i386/pc/vbe.c: Include `<grub/machine/vga.h>'.
45724
	(grub_vbe_set_video_mode): Use `GRUB_MEMORY_MACHINE_VGA_ADDR'
45725
	instead of hardcoding 0xA0000.
45726
45727
2008-01-21  Robert Millan  <rmh@aybabtu.com>
45728
45729
	* disk/memdisk.c (memdisk_size): New variable.
45730
	(grub_memdisk_open): Replace grub_arch_memdisk_size() call with
45731
	`memdisk_size'.
45732
	(grub_memdisk_init): Initialize `memdisk_size'.  Reallocate memdisk
45733
	image to dynamic memory.
45734
	(grub_memdisk_fini): Replace grub_arch_memdisk_size() call with
45735
	`memdisk_size'.  Free memdisk block.
45736
45737
2008-01-21  Robert Millan  <rmh@aybabtu.com>
45738
45739
	Fix detection of very small filesystems (like tar).
45740
45741
	* fs/reiserfs.c (grub_reiserfs_mount): When disk is too small to
45742
	contain a ReiserFS, abort with GRUB_ERR_BAD_FS rather than
45743
	GRUB_ERR_OUT_OF_RANGE (which made the upper layer think there's
45744
	a problem with this disk).
45745
45746
2008-01-21  Robert Millan  <rmh@aybabtu.com>
45747
45748
	* disk/i386/pc/biosdisk.c (grub_biosdisk_iterate): Add debug message
45749
	on grub_biosdisk_rw_standard() error.
45750
45751
2008-01-21  Robert Millan  <rmh@aybabtu.com>
45752
45753
	* include/grub/ieee1275/ieee1275.h: Add 2008 to Copyright line for
45754
	recent changes.
45755
	* kern/elf.c: Likewise.
45756
	* kern/ieee1275/ieee1275.c: Likewise.
45757
	* kern/powerpc/ieee1275/openfw.c: Likewise.
45758
	* term/ieee1275/ofconsole.c: Likewise.
45759
45760
2008-01-21  Robert Millan  <rmh@aybabtu.com>
45761
45762
	* include/grub/i386/pc/kernel.h: Include `<grub/symbol.h>'.
45763
45764
	* include/grub/kernel.h (grub_arch_memdisk_addr)
45765
	(grub_arch_memdisk_size): Moved from here ...
45766
45767
	* include/grub/i386/pc/kernel.h (grub_arch_memdisk_addr)
45768
	(grub_arch_memdisk_size): ... to here.
45769
45770
2008-01-21  Robert Millan  <rmh@aybabtu.com>
45771
45772
	Mostly based on bugfix from Bean.
45773
45774
	* kern/elf.c (grub_elf32_phdr_iterate): Use `NESTED_FUNC_ATTR'
45775
	attribute with hook() parameter.
45776
	(grub_elf32_load): Use `NESTED_FUNC_ATTR' with grub_elf32_load_segment()
45777
	declaration.
45778
	(grub_elf64_phdr_iterate): Use `NESTED_FUNC_ATTR'
45779
	attribute with hook() parameter.
45780
	(grub_elf64_load): Use `NESTED_FUNC_ATTR' with grub_elf64_load_segment()
45781
	declaration.
45782
45783
2008-01-21  Robert Millan  <rmh@aybabtu.com>
45784
45785
	* conf/i386-pc.rmk (kernel_img_HEADERS): Add `machine/kernel.h'.
45786
	(pkglib_MODULES): Add `memdisk.mod'.
45787
	(memdisk_mod_SOURCES): New variable.
45788
	(memdisk_mod_CFLAGS): Likewise.
45789
	(memdisk_mod_LDFLAGS): Likewise.
45790
45791
	* disk/memdisk.c: New file.
45792
45793
	* include/grub/disk.h (grub_disk_dev_id): Add
45794
	`GRUB_DISK_DEVICE_MEMDISK_ID'.
45795
45796
	* include/grub/i386/pc/kernel.h
45797
	(GRUB_KERNEL_MACHINE_MEMDISK_IMAGE_SIZE): New macro.
45798
	(GRUB_KERNEL_MACHINE_PREFIX): Increment by 4.
45799
	(grub_kernel_image_size): New variable declaration.
45800
	(grub_total_module_size): Likewise.
45801
	(grub_memdisk_image_size): Likewise.
45802
45803
	* include/grub/i386/pc/memory.h
45804
	(GRUB_MEMORY_MACHINE_DECOMPRESSION_ADDR): New macro.
45805
45806
	* include/grub/kernel.h: Include `<grub/symbol.h>'.
45807
	(grub_arch_memdisk_addr): New variable declaration.
45808
	(grub_arch_memdisk_size): Likewise.
45809
45810
	* kern/i386/pc/init.c (grub_arch_memdisk_addr): New function.
45811
	(grub_arch_memdisk_size): Likewise.
45812
45813
	* kern/i386/pc/startup.S (grub_memdisk_image_size): New variable.
45814
	(codestart): Replace hardcoded `0x100000' with
45815
	`GRUB_MEMORY_MACHINE_DECOMPRESSION_ADDR' macro.
45816
45817
	* util/i386/pc/grub-mkimage.c: Include `<grub/misc.h>'.
45818
	(generate_image): Add `memdisk_path' parameter.  When `memdisk_path' is
45819
	not NULL, append the contents of the file it refers to, at the end of
45820
	the compressed kernel image.  Initialize `grub_memdisk_image_size'
45821
	variable (at `GRUB_KERNEL_MACHINE_MEMDISK_IMAGE_SIZE' offset).
45822
	(options): Add "memdisk"|'m' option.
45823
	(main): Parse --memdisk|-m option, and pass user-provided path as
45824
	parameter to generate_image().
45825
45826
2008-01-20  Robert Millan  <rmh@aybabtu.com>
45827
45828
	* kern/sparc64/ieee1275/openfw.c (grub_devalias_iterate): Copy debug
45829
	grub_dprintf() calls from here ...
45830
	* kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): ... to here.
45831
45832
2008-01-20  Robert Millan  <rmh@aybabtu.com>
45833
45834
	Fix detection of "real mode" when /options/real-mode? doesn't exist.
45835
45836
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_mmu): New variable
45837
	declaration.
45838
	* kern/powerpc/ieee1275/cmain.c (grub_ieee1275_mmu): New variable.
45839
	(grub_ieee1275_find_options): If `grub_ieee1275_mmu' is 0, set
45840
	`GRUB_IEEE1275_FLAG_REAL_MODE'.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45841
	(cmain): Initialize `grub_ieee1275_mmu' (using /chosen/mmu integer
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
45842
	property).
45843
	* kern/powerpc/ieee1275/openfw.c (grub_map): Rely on pre-initialized
45844
	`grub_ieee1275_mmu' rather than obtaining a handler on every call.
45845
45846
2008-01-19  Robert Millan  <rmh@aybabtu.com>
45847
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45848
	Get rid of confusing function (superseded by
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
45849
	`grub_ieee1275_get_integer_property')
45850
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_decode_int_4): Remove
45851
	prototype.
45852
	* kern/ieee1275/ieee1275.c (grub_ieee1275_decode_int_4): Remove
45853
	function.
45854
	* term/ieee1275/ofconsole.c (grub_ofconsole_init): Avoid use of
45855
	grub_ieee1275_decode_int_4(), by obtaining integer properties directly
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45856
	in native endianness from grub_ieee1275_get_integer_property().
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
45857
45858
2008-01-19  Robert Millan  <rmh@aybabtu.com>
45859
45860
	* kern/powerpc/ieee1275/openfw.c (grub_halt): Issue "power-off"
45861
	command after "shut-down", since implementations differ on which
45862
	the command for halt is.
45863
45864
2008-01-19  Robert Millan  <rmh@aybabtu.com>
45865
45866
	* include/grub/i386/linuxbios/console.h: Add header protection.
45867
	(grub_keyboard_controller_init): New function prototype.
45868
	* term/i386/pc/at_keyboard.c (KEYBOARD_COMMAND_ISREADY): New macro.
45869
	(KEYBOARD_COMMAND_READ): Likewise.
45870
	(KEYBOARD_COMMAND_WRITE): Likewise.
45871
	(KEYBOARD_SCANCODE_SET1): Likewise.
45872
	(grub_keyboard_controller_write): New function.
45873
	(grub_keyboard_controller_read): Likewise.
45874
	(grub_keyboard_controller_init): Likewise.
45875
45876
	* term/i386/pc/console.c: Include `<grub/machine/machine.h>'.
45877
	(grub_console_init): On coreboot/LinuxBIOS, call
45878
	grub_keyboard_controller_init().
45879
45880
2008-01-19  Robert Millan  <rmh@aybabtu.com>
45881
45882
	PowerPC changes provided by Pavel Roskin.
45883
45884
	* kern/powerpc/ieee1275/cmain.c (cmain): Don't take any arguments.
45885
	* kern/powerpc/ieee1275/crt0.S: Store r5 in grub_ieee1275_entry_fn,
45886
	don't rely on cmain() doing it.
45887
	* kern/i386/ieee1275/startup.S (_start): Store %eax in
45888
	grub_ieee1275_entry_fn, don't rely on cmain() doing it.
45889
45890
2008-01-16  Robert Millan  <rmh@aybabtu.com>
45891
45892
	* include/grub/i386/linuxbios/memory.h
45893
	(GRUB_MEMORY_MACHINE_LINUXBIOS_TABLE_ADDR): Remove macro.
45894
	* kern/i386/linuxbios/table.c (grub_linuxbios_table_iterate): Do not
45895
	receive `table_header' as argument.  Instead, probe for it in the
45896
	known memory ranges where it can be present.
45897
	(grub_available_iterate): Do not pass a fixed `table_header' address
45898
	to grub_linuxbios_table_iterate().
45899
45900
2008-01-15  Robert Millan  <rmh@aybabtu.com>
45901
45902
	* configure.ac: Add `i386-ieee1275' to the list of supported targets.
45903
	* conf/i386-ieee1275.rmk: New file.
45904
	* include/grub/i386/ieee1275/console.h: Likewise.
45905
	* include/grub/i386/ieee1275/ieee1275.h: Likewise.
45906
	* include/grub/i386/ieee1275/kernel.h: Likewise.
45907
	* include/grub/i386/ieee1275/time.h: Likewise.
45908
	* kern/i386/ieee1275/init.c: Likewise.
45909
	* kern/i386/ieee1275/startup.S: Likewise.
45910
45911
2008-01-15  Robert Millan  <rmh@aybabtu.com>
45912
45913
	* kern/misc.c (grub_vsprintf): Do not reset `longlongfmt' to zero
45914
	when pointers are 32-bit (but still do set it to one when they are
45915
	64-bit).
45916
45917
2008-01-15  Robert Millan  <rmh@aybabtu.com>
45918
45919
	* include/grub/ieee1275/ieee1275.h
45920
	(grub_ieee1275_get_integer_property): New function prototype.
45921
45922
	* kern/ieee1275/ieee1275.c: Include `<grub/types.h>'.
45923
	(grub_ieee1275_get_integer_property): New function.  Wraps around
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45924
	grub_ieee1275_get_property() to handle endianness.
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
45925
45926
	* kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): Replace
45927
	grub_ieee1275_get_property() with grub_ieee1275_get_integer_property()
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45928
	where appropriate.
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
45929
	* kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Likewise.
45930
	(grub_map): Likewise.
45931
	* kern/sparc64/ieee1275/openfw.c (grub_map): Likewise.
45932
45933
2008-01-15  Bean  <bean123ch@gmail.com>
45934
45935
	* normal/execute.c (grub_script_exec_argument_to_string): Check for undefined variable.
45936
	(grub_script_execute_cmdline): Reset grub_errno.
45937
45938
	* normal/main.c (read_config_file): Reset grub_errno.
45939
45940
	* normal/parse.y (script_init): New.
45941
	(script): Move function and menuentry here.
45942
	(delimiter): New.
45943
	(command): Add delimiter at the end of command.
45944
	(commands): Adjust to match the new command.
45945
	(commandblock): Remove grub_script_lexer_record_start.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
45946
	(menuentry): Add grub_script_lexer_record_start, use the new commands.
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
45947
	(if): Use the new commands.
45948
45949
	* conf/common.rmk (pkgdata_MODULES): Add echo.mod.
45950
45951
2008-01-15  Robert Millan  <rmh@aybabtu.com>
45952
45953
	* normal/menu.c (run_menu): Move timeout message from here ...
45954
	(print_timeout): ... to here.
45955
	(run_menu): Use print_timeout() once during initial draw to print
45956
	the whole message, and again in every clock tick to update only
45957
	the number of seconds.
45958
45959
2008-01-15  Robert Millan  <rmh@aybabtu.com>
45960
45961
	* kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Obtain
45962
	actual size of `available' from grub_ieee1275_get_property(), and
45963
	restrict parsing to that bound.
45964
45965
2008-01-15  Christian Franke  <franke@computer.org>
45966
45967
	* util/grub-emu.c: Replace <argp.h> by <getopt.h>.
45968
	(argp_program_version): Remove variable.
45969
	(argp_program_bug_address): Likewise.
45970
	(options): Convert from struct argp_option to struct option.
45971
	(struct arguments): Remove.
45972
	(parse_opt): Remove.
45973
	(usage): New function.
45974
	(main): Replace struct args members by simple variables.
45975
	Replace argp_parse() by getopt_long().
45976
	Add switch to evaluate options.
45977
	Add missing "(...)" around root_dev in prefix string.
45978
45979
2008-01-14  Robert Millan  <rmh@aybabtu.com>
45980
45981
	* kern/powerpc/ieee1275/init.c (grub_exit): Reimplement as a wrapper
45982
	for grub_ieee1275_exit(), in order to improve portability.
45983
45984
2008-01-14  Robert Millan  <rmh@aybabtu.com>
45985
45986
	* util/grub.d/10_linux.in (prefix): Define.
45987
	(exec_prefix): Likewise.  Both definitions are later used by `libdir'.
45988
45989
2008-01-13  Pavel Roskin  <proski@gnu.org>
45990
45991
	* disk/ieee1275/ofdisk.c (grub_ofdisk_open): Don't use
45992
	grub_errno if no errors have been detected.
45993
45994
2008-01-12  Robert Millan  <rmh@aybabtu.com>
45995
45996
	* include/grub/util/getroot.h (grub_dev_abstraction_types): New enum.
45997
	(grub_util_get_dev_abstraction): New function prototype.
45998
45999
	* util/getroot.c: Include `<grub/util/getroot.h>'
46000
	(grub_util_get_grub_dev): Move detection of abstraction type to ...
46001
	(grub_util_get_dev_abstraction): ... here (new function).
46002
46003
	* util/grub-probe.c: Convert PRINT_* to an enum.  Add
46004
	`PRINT_ABSTRACTION'.
46005
	(probe): Probe for abstraction type when requested.
46006
	(main): Understand `--target=abstraction'.
46007
46008
	* util/i386/efi/grub-install.in: Add abstraction module to core
46009
	image when it is found to be necessary.
46010
	* util/i386/pc/grub-install.in: Likewise.
46011
	* util/powerpc/ieee1275/grub-install.in: Likewise.
46012
46013
	* util/update-grub_lib.in (font_path): Return system path without
46014
	converting to GRUB path.
46015
	* util/update-grub.in: Convert system path returned by font_path()
46016
	to a GRUB path.  Use `grub-probe -t abstraction' to determine what
46017
	abstraction module is needed for loading fonts (if any).  Export
46018
	that as `GRUB_PRELOAD_MODULES'.
46019
	* util/grub.d/00_header.in: Process `GRUB_PRELOAD_MODULES' (print
46020
	insmod commands).
46021
46022
2008-01-12  Yoshinori K. Okuji  <okuji@enbug.org>
46023
46024
	Remove some unused code from reiserfs.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46025
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46026
	* fs/reiserfs.c (struct grub_reiserfs_key)
46027
	[GRUB_REISERFS_KEYV2_BITFIELD]: Removed offset and type.
46028
	(struct grub_reiserfs_node_body): Removed.
46029
	(grub_reiserfs_get_key_v2_type) [GRUB_REISERFS_KEYV2_BITFIELD]:
46030
	Likewise.
46031
	(grub_reiserfs_get_key_offset) [GRUB_REISERFS_KEYV2_BITFIELD]:
46032
	Likewise.
46033
	(grub_reiserfs_set_key_offset) [GRUB_REISERFS_KEYV2_BITFIELD]:
46034
	Likewise.
46035
	(grub_reiserfs_set_key_offset) [GRUB_REISERFS_KEYV2_BITFIELD]:
46036
	Likewise.
46037
	(grub_reiserfs_set_key_type) [GRUB_REISERFS_KEYV2_BITFIELD]:
46038
	Likewise.
46039
	(grub_reiserfs_iterate_dir) [GRUB_REISERFS_KEYV2_BITFIELD]:
46040
	Likewise.
46041
	(grub_reiserfs_open) [GRUB_REISERFS_KEYV2_BITFIELD]: Likewise.
46042
	(grub_reiserfs_read) [GRUB_REISERFS_KEYV2_BITFIELD]: Likewise.
46043
	(grub_reiserfs_dir) [GRUB_REISERFS_KEYV2_BITFIELD]: Likewise.
46044
46045
2008-01-10  Robert Millan  <rmh@aybabtu.com>
46046
46047
	* util/update-grub_lib.in (grub_file_is_not_garbage): New function.
46048
	Determines if a file is garbage left by packaging systems, etc.
46049
	* util/update-grub.in: Use grub_file_is_not_garbage() as a condition
46050
	for processing /etc/grub.d scripts.
46051
	* util/grub.d/10_hurd.in: Fix `GRUB_DISTRIBUTOR' comparison.
46052
	* util/grub.d/10_linux.in: Likewise.  Use grub_file_is_not_garbage()
46053
	as a condition for processing Linux images.
46054
46055
2008-01-10  Pavel Roskin  <proski@gnu.org>
46056
46057
	* include/grub/powerpc/libgcc.h (__ucmpdi2): New export.  Needed
46058
	to compile reiserfs.c on PowerPC.
46059
46060
2008-01-10  Robert Millan  <rmh@aybabtu.com>
46061
46062
	* kern/device.c (grub_device_iterate): Do not abort device iteration
46063
	when one of the devices cannot be opened.
46064
	* kern/disk.c (grub_disk_open): Do not account previous failures of
46065
	unrelated functions when grub_errno is checked for.
46066
46067
2008-01-08  Robert Millan  <rmh@aybabtu.com>
46068
46069
	* loader/i386/pc/linux.c (grub_rescue_cmd_linux): For
46070
	`! grub_linux_is_bzimage', change order of address comparison to make
46071
	it more intuitive, and improve "too big zImage" error message.
46072
46073
2008-01-08  Robert Millan  <rmh@aybabtu.com>
46074
46075
	* Makefile.in (uninstall): Handle `$(update-grub_SCRIPTS)' and
46076
	`$(update-grub_DATA)'.
46077
	(distcheck): Fix race condition when invoking `$(MAKE)' on multiple
46078
	targets.
46079
46080
2008-01-07  Robert Millan  <rmh@aybabtu.com>
46081
46082
	* boot/i386/pc/boot.S (boot_drive_check): Add a comment indicating
46083
	which instruction is modified by grub-setup during installation
46084
	(since it wasn't obvious by only looking at this file).
46085
46086
2008-01-07  Robert Millan  <rmh@aybabtu.com>
46087
46088
	* TODO: Rewrite.  Just refer to the wiki and the BTS instead of
46089
	listing actual TODO items.
46090
46091
2008-01-06  Yoshinori K. Okuji  <okuji@enbug.org>
46092
46093
	* fs/reiserfs.c (grub_reiserfs_get_key_v2_type): Handle endianness
46094
	correctly.
46095
	(grub_reiserfs_get_key_offset): Likewise.
46096
	(grub_reiserfs_set_key_offset): Likewise.
46097
	(grub_reiserfs_set_key_type): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46098
	(grub_reiserfs_iterate_dir): Return 1 if found, otherwise 0.
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46099
46100
	(GRUB_REISERFS_KEYV2_BITFIELD): Undefined. Probably it would be
46101
	better to remove the bitfield version completely.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46102
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46103
2008-01-06  Yoshinori K. Okuji  <okuji@enbug.org>
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46104
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46105
	* fs/reiserfs.c (grub_reiserfs_iterate_dir): ENTRY_ITEM must be
46106
	allocated from the heap, due to the fshelp implementation.
46107
	(grub_reiserfs_dir): Free NODE, due to the same reason.
46108
46109
2008-01-06  Yoshinori K. Okuji  <okuji@enbug.org>
46110
46111
	Mostly from Vincent Pelletier:
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46112
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46113
	* fs/reiserfs.c: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46114
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46115
	* conf/common.rmk (pkglib_MODULES): Added reiserfs.mod.
46116
	(reiserfs_mod_SOURCES): New variable.
46117
	(reiserfs_mod_CFLAGS): Likewise.
46118
	(reiserfs_mod_LDFLAGS): Likewise.
46119
46120
	* DISTLIST: Added boot/i386/pc/lnxboot.S, commands/hexdump.c,
46121
	disk/ata.c, fs/cpio.c, fs/ntfscomp.c, fs/reiserfs.c,
46122
	include/grub/ntfs.h, include/grub/i386/pc/machine.h, and
46123
	normal/color.c.
46124
46125
2008-01-06  Robert Millan  <rmh@aybabtu.com>
46126
46127
	* normal/color.c: Remove `<grub/env.h>'.
46128
46129
2008-01-05  Jeroen Dekkers  <jeroen@dekkers.cx>
46130
46131
	* include/grub/normal.h: Include <grub/env.h>.
46132
46133
2008-01-05  Robert Millan  <rmh@aybabtu.com>
46134
46135
	* util/i386/pc/grub-setup.c (usage): Replace obsolete `(hd0,0)' in
46136
	usage example with `(hd0,1)'.
46137
	Reported by Samuel Thibault.
46138
46139
2008-01-05  Robert Millan  <rmh@aybabtu.com>
46140
46141
	* kern/i386/loader.S (grub_linux_is_bzimage): New variable.
46142
	(grub_linux_boot_zimage): Rename to ...
46143
	(grub_linux_boot): ... this.
46144
	(grub_linux_boot_bzimage): Merge with `grub_linux_boot_zimage'.
46145
	(grub_linux_boot_zimage): Conditionalize zImage copy.
46146
46147
	* include/grub/i386/loader.h (grub_linux_is_bzimage): Add prototype.
46148
	(grub_linux_boot_bzimage): Remove prototype.
46149
	(grub_linux_boot_zimage): Rename to ...
46150
	(grub_linux_boot): ... this.
46151
46152
	* loader/i386/pc/linux.c (big_linux): Replace with `grub_linux_is_bzimage'.
46153
	(grub_linux_boot): Remove function.
46154
46155
2008-01-05  Robert Millan  <rmh@aybabtu.com>
46156
46157
	* include/grub/normal.h (grub_env_write_color_normal): New prototype.
46158
	(grub_env_write_color_highlight): Likewise.
46159
	(grub_wait_after_message): Likewise.
46160
46161
	* normal/color.c: New file.
46162
46163
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `normal/color.c'.
46164
	(normal_mod_DEPENDENCIES): Likewise.
46165
46166
	* conf/i386-efi.rmk (grub_emu_SOURCES): Add `normal/color.c'.
46167
	(normal_mod_DEPENDENCIES): Likewise.
46168
46169
	* conf/i386-linuxbios.rmk (grub_emu_SOURCES): Add `normal/color.c'.
46170
	(normal_mod_DEPENDENCIES): Likewise.
46171
46172
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `normal/color.c'.
46173
	(normal_mod_DEPENDENCIES): Likewise.
46174
46175
	* normal/menu_entry.c (run): Rely on grub_wait_after_message()
46176
	for waiting after a message is printed.
46177
	* normal/main.c (read_config_file): Likewise.
46178
	(grub_normal_init): Register grub_env_write_color_normal() and
46179
	grub_env_write_color_highlight() hooks.  Mark `color_normal' and
46180
	`color_highlight' variables as global.
46181
46182
	* normal/menu.c (grub_wait_after_message): New function.
46183
	(grub_color_menu_normal): New variable.  Replaces ...
46184
	(GRUB_COLOR_MENU_NORMAL): ... this macro.
46185
	(grub_color_menu_highlight): New variable.  Replaces ...
46186
	(GRUB_COLOR_MENU_HIGHLIGHT): ... this macro.
46187
	(draw_border): Set color state to `GRUB_TERM_COLOR_NORMAL' instead of
46188
	`GRUB_TERM_COLOR_STANDARD'.
46189
	(print_message): Use `grub_setcolorstate' to reload colors.  Rename
46190
	`normal_code' and `highlight_code' to `old_color_normal' and
46191
	`old_color_highlight', respectively.
46192
	(grub_menu_init_page): Update colors when drawing the menu, based on
46193
	`menu_color_normal' and `menu_color_highlight' variables.
46194
	(grub_menu_run): Rely on grub_wait_after_message() for waiting after
46195
	a message is printed.
46196
46197
2008-01-05  Robert Millan  <rmh@aybabtu.com>
46198
46199
	* kern/env.c (grub_env_context_open): Propagate hooks for global
46200
	variables to new context.
46201
46202
	* kern/main.c (grub_set_root_dev): Export `root' variable.
46203
46204
2008-01-05  Robert Millan  <rmh@aybabtu.com>
46205
46206
	* util/biosdisk.c (get_os_disk): Check for devfs-style IDE and SCSI
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46207
	discs unconditionally, since udev and others have options to provide
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46208
	them.
46209
46210
2008-01-05  Robert Millan  <rmh@aybabtu.com>
46211
46212
	* normal/completion.c (iterate_dir): Skip `.' and `..' directories.
46213
46214
2008-01-04  Christian Franke  <franke@computer.org>
46215
46216
	* kern/i386/pc/init.c (grub_machine_init): Fix evaluation
46217
	of eisa_mmap.
46218
46219
2008-01-03  Pavel Roskin  <proski@gnu.org>
46220
46221
	* kern/i386/linuxbios/init.c: Put "void" to all function
46222
	declarations with no arguments.
46223
	* kern/powerpc/ieee1275/init.c: Likewise.
46224
	* term/i386/pc/at_keyboard.c: Likewise.
46225
	* term/i386/pc/vga_text.c: Likewise.
46226
	* util/grub-mkdevicemap.c: Likewise.
46227
46228
2008-01-02  Robert Millan  <rmh@aybabtu.com>
46229
46230
	* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Improve error
46231
	message when loaded image is out of bounds.
46232
	(grub_multiboot_load_elf64): Likewise.
46233
46234
2008-01-02  Pavel Roskin  <proski@gnu.org>
46235
46236
	* util/grub.d/10_linux.in: Try version without ".old" when
46237
	looking for initrd.  It's better to use initrd from the newer
46238
	kernel of the same version than no initrd at all.
46239
46240
2008-01-01  Robert Millan  <rmh@aybabtu.com>
46241
46242
	* util/biosdisk.c (get_os_disk): Fix check for IDE or SCSI discs.
46243
46244
2008-01-01  Vesa Jaaskelainen  <chaac@nic.fi>
46245
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46246
	* include/grub/video.h: Added grub_video_unmap_color and
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46247
	grub_video_get_active_render_target.
46248
	(grub_video_adapter): Added unmap_color and get_active_render_target.
46249
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46250
	* video/video.c: Added grub_video_unmap_color and
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46251
	grub_video_get_active_render_target.
46252
	(grub_video_get_info): Changed method to accept NULL pointer as an
46253
	argument to allow detection of active video adapter.
46254
46255
	* video/i386/pc/vbe.c: Renamed grub_video_vbe_unmap_color as
46256
	grub_video_vbe_unmap_color_int.
46257
	Added grub_video_vbe_unmap_color and
46258
	grub_video_vbe_get_active_render_target.
46259
	(grub_video_vbe_adapter): Added unmap_color and
46260
	get_active_render_target.
46261
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46262
	* video/i386/pc/vbeblit.c: Replaced grub_video_vbe_unmap_color usage
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46263
	with grub_video_vbe_unmap_color_int.
46264
46265
	* term/gfxterm.c (DEFAULT_STANDARD_COLOR): Added.
46266
	(DEFAULT_NORMAL_COLOR): Likewise.
46267
	(DEFAULT_HIGHLIGHT_COLOR) Likewise.
46268
	(DEFAULT_FG_COLOR): Removed.
46269
	(DEFAULT_BG_COLOR): Likewise.
46270
	(DEFAULT_CURSOR_COLOR): Changed value.
46271
	(grub_virtual_screen): Added standard_color_setting,
46272
	normal_color_setting, highlight_color_setting and term_color.
46273
	(grub_virtual_screen): Removed fg_color_setting and bg_color_setting.
46274
	(bitmap_width): Added.
46275
	(bitmap_height): Likewise.
46276
	(bitmap): Likewise.
46277
	(set_term_color): Likewise.
46278
	(grub_virtual_screen_setup): Changed to use new terminal coloring
46279
	settings.
46280
	(grub_gfxterm_init): Added init for bitmap.
46281
	(grub_gfxterm_fini): Added destroy for bitmap.
46282
	(redraw_screen_rect): Updated to use background bitmap and new
46283
	terminal coloring.
46284
	(scroll_up): Added optimization for case when there is no bitmap.
46285
	(grub_gfxterm_cls): Fixed to use correct background color.
46286
	(grub_virtual_screen_setcolorstate): Changed to use new terminal
46287
	coloring.
46288
	(grub_virtual_screen_setcolor): Likewise.
46289
	(grub_virtual_screen_getcolor): Added.
46290
	(grub_gfxterm_background_image_cmd): Likewise.
46291
	(grub_video_term): Added setcolor and getcolor.
46292
	(MOD_INIT): Added registration of background_image command.
46293
	(MOD_TERM): Added unregistration for background_image command.
46294
46295
2007-12-30  Pavel Roskin  <proski@gnu.org>
46296
46297
	* loader/multiboot_loader.c: Fix multiboot command
46298
	unregistration.  Fix all typos in the word "multiboot".
46299
46300
2007-12-29  Pavel Roskin  <proski@gnu.org>
46301
46302
	* util/grub.d/10_linux.in: Refactor search for initrd.  Add
46303
	support for initrd names used in Fedora.
46304
46305
2007-12-26  Bean  <bean123ch@gmail.com>
46306
46307
	* conf/common.rmk (pkgdata_MODULES): Add cpio.mod.
46308
	(cpio_mod_SOURCES): New variable.
46309
	(cpio_mod_CFLAGS): Likewise.
46310
	(cpio_mod_LDFLAGS): Likewise.
46311
46312
	* fs/cpio.c: New file.
46313
46314
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add cpio.c.
46315
46316
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
46317
46318
	* conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
46319
46320
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
46321
46322
2007-12-25  Robert Millan  <rmh@aybabtu.com>
46323
46324
	* include/grub/term.h (struct grub_term): Add `getcolor' function.
46325
	(grub_getcolor): New function.
46326
46327
	* kern/term.c (grub_getcolor): New function.
46328
	* normal/menu.c (GRUB_COLOR_MENU_NORMAL): New macro.
46329
	(GRUB_COLOR_MENU_HIGHLIGHT): New macro.
46330
	(print_entry): Set normal and highlight colors to
46331
	`GRUB_COLOR_MENU_NORMAL' and `GRUB_COLOR_MENU_HIGHLIGHT',
46332
	respectively, before printing and restore them to old
46333
	values afterwards.
46334
	(grub_menu_init_page): Likewise.  Fill an additional colored space
46335
	that would otherwise be left blank.
46336
46337
	* term/efi/console.c (grub_console_getcolor): New function.
46338
	(struct grub_console_term.getcolor): New variable.
46339
	* term/i386/pc/console.c (grub_console_getcolor): New function.
46340
	(struct grub_console_term.getcolor): New variable.
46341
	* term/ieee1275/ofconsole.c (grub_ofconsole_getcolor): New function.
46342
	(struct grub_console_term.getcolor): New variable.
46343
46344
	* term/i386/pc/serial.c (grub_serial_setcolor): Remove function.
46345
	(struct grub_console_term.setcolor): Remove variable.
46346
	* term/i386/pc/vesafb.c (grub_virtual_screen_setcolor): Remove function.
46347
	(struct grub_console_term.setcolor): Remove variable.
46348
	* term/i386/pc/vga.c (grub_vga_setcolor): Remove function.
46349
	(struct grub_console_term.setcolor): Remove variable.
46350
	* term/gfxterm.c (grub_virtual_screen_setcolor): Remove function.
46351
	(struct grub_console_term.setcolor): Remove variable.
46352
46353
2007-12-25  Robert Millan  <rmh@aybabtu.com>
46354
46355
	* configure.ac: Search for possible unifont.hex locations, and
46356
	define UNIFONT_HEX if found.
46357
46358
	* Makefile.in (UNIFONT_HEX): Define variable.
46359
	(DATA): Rename to ...
46360
	(PKGLIB): ... this.  Update all users.
46361
	(PKGDATA): New variable.
46362
	(pkgdata_IMAGES): Rename to ...
46363
	(pkglib_IMAGES): ... this. Update all users.
46364
	(pkgdata_MODULES): Rename to ...
46365
	(pkglib_MODULES): ... this. Update all users.
46366
	(pkgdata_PROGRAMS): Rename to ...
46367
	(pkglib_PROGRAMS): ... this. Update all users.
46368
	(pkgdata_DATA): Rename to ...
46369
	(pkglib_DATA): ... this. Update all users.
46370
	(CLEANFILES): Redefine to `$(pkglib_DATA) $(pkgdata_DATA)'.
46371
	(unicode.pff, ascii.pff): New rules.
46372
	(all-local): Add `$(PKGDATA)' dependency.
46373
	(install-local): Process `$(PKGDATA)'.
46374
46375
	* util/update-grub_lib.in (font_path): Search for *.pff files in
46376
	a few more locations, including `${pkgdata}'.
46377
46378
2007-12-23  Robert Millan  <rmh@aybabtu.com>
46379
46380
	Patch from Bean  <bean123ch@gmail.com>:
46381
	* disk/loopback.c (grub_loopback_read): Add missing bit shift to
46382
	`size'.
46383
46384
2007-12-21  Bean  <bean123ch@gmail.com>
46385
46386
	* conf/common.rmk (pkgdata_MODULES): Add ntfscomp.mod.
46387
	(ntfscomp_mod_SOURCES): New variable.
46388
	(ntfscomp_mod_CFLAGS): Likewise.
46389
	(ntfscomp_mod_LDFLAGS): Likewise.
46390
46391
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/ntfscomp.c.
46392
	(grub_probe_SOURCES): Likewise.
46393
	(grub_emu_SOURCES): Likewise.
46394
46395
	* conf/i386-efi.rmk (grub_probe_SOURCES): Add fs/ntfscomp.c.
46396
	(grub_emu_SOURCES): Likewise.
46397
46398
	* conf/i386-linuxbios.rmk (grub_probe_SOURCES): Add fs/ntfscomp.c.
46399
	(grub_emu_SOURCES): Likewise.
46400
46401
	* conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Add fs/ntfscomp.c.
46402
	(grub_emu_SOURCES): Likewise.
46403
46404
	* fs/ntfs.c (grub_ntfscomp_func): New variable.
46405
	(read_run_list): Renamed to grub_ntfs_read_run_list.
46406
	(decomp_nextvcn): Moved to ntfscomp.c.
46407
	(decomp_getch): Likewise.
46408
	(decomp_get16): Likewise.
46409
	(decomp_block): Likewise.
46410
	(read_block): Likewise.
46411
	(read_data): Partially moved to ntfscomp.c.
46412
	(fixup): Change unsigned to grub_uint16_t.
46413
	(read_mft): Change unsigned long to grub_uint32_t.
46414
	(read_attr): Likewise.
46415
	(read_data): Likewise.
46416
	(read_run_data): Likewise.
46417
	(read_run_list): Likewise.
46418
	(read_mft): Likewise.
46419
46420
	* fs/ntfscomp.c: New file.
46421
46422
	* include/grub/ntfs.h: New file.
46423
46424
2007-12-16  Robert Millan  <rmh@aybabtu.com>
46425
46426
	* util/grub-mkdevicemap.c (make_device_map): Iterate up to 20 for
46427
	IDE disk check, since Linux is known to support 20 IDE disks.
46428
	Reported by Colin Watson.
46429
46430
2007-12-15  Bean  <bean123ch@gmail.com>
46431
46432
	* conf/i386-pc.rmk (pkgdata_IMAGES): Add lnxboot.img.
46433
	(lnxboot_img_SOURCES): New variable.
46434
	(lnxboot_img_ASFLAGS): Likewise.
46435
	(lnxboot_img_LDFLAGS): Likewise.
46436
46437
	* boot/i386/pc/lnxboot.S: New file.
46438
46439
2007-11-24  Pavel Roskin  <proski@gnu.org>
46440
46441
	* configure.ac: Test if '--build-id=none' is supported by the
46442
	linker.  If yes, add it to TARGET_LDFLAGS.  Build ID causes
46443
	objcopy to generate incorrect binary files (binutils
46444
	2.17.50.0.18-1 as shipped by Fedora 8).
46445
	* aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): Use LDFLAGS when
46446
	linking, so that build ID doesn't break the test.
46447
46448
2007-11-24  Pavel Roskin  <proski@gnu.org>
46449
46450
	* include/grub/i386/time.h: use "void" in the argument list
46451
	of grub_cpu_idle().
46452
	* include/grub/powerpc/time.h: Likewise.
46453
	* include/grub/sparc64/time.h: Likewise.
46454
46455
2007-11-18  Christian Franke  <franke@computer.org>
46456
46457
	* util/console.c (grub_ncurses_getkey): Change curses KEY_* mapping,
46458
	now return control chars instead of GRUB_CONSOLE_KEY_* constants.
46459
	This fixes the problem that function keys did not work in grub-emu.
46460
46461
2007-11-18  Christian Franke  <franke@computer.org>
46462
46463
	* disk/host.c (grub_host_open): Remove attribute unused from
46464
	name parameter. Add check for "host". This fixes the problem
46465
	that grub-emu does not find partitions.
46466
46467
2007-11-18  Christian Franke  <franke@computer.org>
46468
46469
	* util/hostfs.c (is_dir): New function.
46470
	(grub_hostfs_dir):  Handle missing dirent.d_type case.
46471
	(grub_hostfs_read): Add missing fseek().
46472
	(grub_hostfs_label): Clear label pointer.  This fixes a crash
46473
	of grub-emu on "ls (host)".
46474
46475
2007-11-18  Christian Franke  <franke@computer.org>
46476
46477
	* include/grub/i386/pc/init.h (struct grub_machine_mmap_entry):
46478
	Add attribute packed, gcc 3.4.4 on Cygwin aligns this
46479
	to 64 bit boundary by default.
46480
46481
2007-11-18  Bean  <bean123ch@gmail.com>
46482
46483
	* conf/common.rmk (pkgdata_MODULES): Add hexdump.mod.
46484
	(hexdump_mod_SOURCES): New variable.
46485
	(hexdump_mod_CFLAGS): Likewise.
46486
	(hexdump_mod_LDFLAGS): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46487
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46488
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add command/hexdump.c.
46489
46490
	* conf/i386-efi.rmk (grub_emu_SOURCES): Add command/hexdump.c.
46491
46492
	* conf/i386-linuxbios.rmk (grub_emu_SOURCES): Add command/hexdump.c.
46493
46494
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add command/hexdump.c.
46495
46496
	* include/grub/hexdump.h: New file.
46497
46498
	* commands/hexdump.c: New file.
46499
46500
2007-11-10  Robert Millan  <rmh@aybabtu.com>
46501
46502
	* commands/i386/pc/play.c (beep_off): Switch order of arguments
46503
	in grub_outb() calls.
46504
	(beep_on): Likewise.
46505
46506
2007-11-10  Christian Franke  <franke@computer.org>
46507
46508
	* normal/menu.c (run_menu): Check for empty menu to avoid crash.
46509
	(grub_menu_run): Likewise.
46510
46511
2007-11-10  Robert Millan  <rmh@aybabtu.com>
46512
46513
	* include/grub/i386/efi/machine.h: New file.
46514
	* include/grub/i386/linuxbios/machine.h: Likewise.
46515
	* include/grub/i386/pc/machine.h: Likewise.
46516
	* include/grub/powerpc/ieee1275/machine.h: Likewise.
46517
	* include/grub/sparc64/ieee1275/machine.h: Likewise.
46518
46519
	* term/i386/pc/serial.c: Include <grub/machine/machine.h>.
46520
	(serial_hw_io_addr): New variable.
46521
	(serial_hw_get_port): Obtain port address from `serial_hw_io_addr'
46522
	instead of `(unsigned short *) 0x400'.
46523
46524
2007-11-10  Bean  <bean123ch@gmail.com>
46525
46526
	* fs/ntfs.c (read_block): Fix a bug caused by adjacent blocks.
46527
46528
2007-11-10  Vesa Jaaskelainen  <chaac@nic.fi>
46529
46530
	* conf/i386-pc.rmk (pkgdata_MODULES): Added vga.mod.
46531
	(vga_mod_SOURCES): Added.
46532
	(vga_mod_CFLAGS): Likewise.
46533
	(vga_mod_LDFLAGS): Likewise.
46534
46535
	* term/i386/pc/vga.c (get_map_mask): Switch order of arguments in
46536
	grub_outb() calls.
46537
	(set_map_mask): Likewise.
46538
	(set_read_map): Likewise.
46539
	(set_read_address): Likewise.
46540
	(vga_font): Removed variable.
46541
	(get_vga_glyph): Removed function.
46542
	(invalidate_char): Likewise.
46543
	(write_char): Changed to use grub_font_get_glyph() for font
46544
	information.
46545
	(grub_vga_putchar): Likewise.
46546
	(grub_vga_getcharwidth): Likewise.
46547
46548
2007-11-10  Vesa Jaaskelainen  <chaac@nic.fi>
46549
46550
	* conf/i386-pc.rmk (boot_img_LDFLAGS): Use COMMON_LDFLAGS for target
46551
	flags.
46552
	(pxeboot_img_LDFLAGS): Likewise.
46553
	(diskboot_img_LDFLAGS): Likewise.
46554
	(kernel_img_LDFLAGS): Likewise.
46555
46556
2007-11-06  Robert Millan  <rmh@aybabtu.com>
46557
46558
	* term/i386/pc/serial.c (serial_hw_put): Switch order of arguments
46559
	in grub_outb() calls.
46560
	(serial_hw_init): Likewise.
46561
46562
2007-11-05  Robert Millan  <rmh@aybabtu.com>
46563
46564
	* util/update-grub.in: Allow files in ${update_grub_dir} to contain
46565
	spaces.  Skip non-regular files.
46566
46567
2007-11-05  Robert Millan  <rmh@aybabtu.com>
46568
46569
	* kern/disk.c (grub_disk_firmware_fini)
46570
	(grub_disk_firmware_is_tainted): New variables.
46571
46572
	* include/grub/disk.h (grub_disk_firmware_fini)
46573
	(grub_disk_firmware_is_tainted): Likewise.
46574
46575
	* disk/i386/pc/biosdisk.c (GRUB_MOD_FINI(biosdisk)): Moved from here ...
46576
	(grub_disk_biosdisk_fini): ... to here.
46577
	(GRUB_MOD_FINI(biosdisk)): Implement using grub_disk_biosdisk_fini().
46578
	(GRUB_MOD_INIT(biosdisk)): Abort when `grub_disk_firmware_is_tainted'
46579
	is set.  Register grub_disk_biosdisk_fini() in
46580
	`grub_disk_firmware_fini'.
46581
46582
	* disk/ata.c: Remove `<grub/machine/biosdisk.h>'.
46583
	(GRUB_MOD_INIT(ata)): Remove grub_biosdisk_fini() call.
46584
	Use `grub_disk_firmware_is_tainted' and `grub_disk_firmware_fini'
46585
	to finish existing firmware disk interface.
46586
46587
	* conf/i386-linuxbios.rmk (pkgdata_MODULES): Add `ata.mod'.
46588
	(ata_mod_SOURCES): New variable.
46589
	(ata_mod_CFLAGS): Likewise.
46590
	(ata_mod_LDFLAGS): Likewise.
46591
46592
2007-11-05  Robert Millan  <rmh@aybabtu.com>
46593
46594
	* disk/ata.c: Remove `<grub/machine/time.h>'.  Include `<grub/time.h>'.
46595
	(grub_ata_wait): Reimplement using grub_millisleep().
46596
46597
	* include/grub/misc.h (grub_div_roundup): Fix parenthesization.
46598
	* include/grub/i386/time.h (grub_cpu_idle): Disable `hlt' instruction.
46599
46600
2007-11-03  Marco Gerards  <marco@gnu.org>
46601
46602
	* term/i386/pc/vga_text.c: Include <grub/cpu/io.h>.
46603
	(CRTC_ADDR_PORT): New macro.
46604
	(CRTC_DATA_PORT): Likewise.
46605
	(CRTC_CURSOR): Likewise.
46606
	(CRTC_CURSOR_ADDR_HIGH): Likewise.
46607
	(CRTC_CURSOR_ADDR_LOW): Likewise.
46608
	(update_cursor): New function.
46609
	(grub_console_real_putchar): Call `update_cursor'.
46610
	(grub_console_gotoxy): Likewise.
46611
	(grub_console_cls): Set the default color when clearing the
46612
	screen.
46613
	(grub_console_setcursor): Implemented.
46614
46615
2007-11-03  Marco Gerards  <marco@gnu.org>
46616
46617
	* disk/ata.c (grub_ata_pio_read): Don't wait for the command to
46618
	become activate.
46619
	(grub_ata_pio_write): Likewise.
46620
46621
	(grub_atapi_identify): Wait after issuing an ATA command.
46622
	(grub_atapi_packet): Likewise.
46623
	(grub_ata_identify): Likewise.
46624
	(grub_ata_readwrite): Likewise.
46625
46626
2007-11-03  Marco Gerards  <marco@gnu.org>
46627
46628
	* disk/ata.c (grub_ata_pio_read): Detect and return the error code.
46629
	(grub_ata_pio_write): Likewise.
46630
	(grub_ata_readwrite): Use `grub_error', instead of
46631
	returning `grub_errno'.
46632
46633
2007-11-03  Marco Gerards  <marco@gnu.org>
46634
46635
	* disk/ata.c (grub_ata_readwrite): Call grub_ata_pio_read and
46636
	grub_ata_pio_write once for every single sector, instead of for
46637
	multiple sectors.
46638
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
46639
2007-10-31  Robert Millan  <rmh@aybabtu.com>
46640
46641
	* configure.ac: Add `i386-linuxbios' to the list of supported targets.
46642
46643
	* conf/i386-linuxbios.rmk: New file.
46644
46645
	* kern/i386/pc/hardware.c: Likewise.
46646
	* term/i386/pc/at_keyboard.c: Likewise.
46647
	* term/i386/pc/vga_text.c: Likewise.
46648
46649
	* include/grub/i386/linuxbios/boot.h: Likewise.
46650
	* include/grub/i386/linuxbios/console.h: Likewise.
46651
	* include/grub/i386/linuxbios/init.h: Likewise.
46652
	* include/grub/i386/linuxbios/kernel.h: Likewise.
46653
	* include/grub/i386/linuxbios/loader.h: Likewise.
46654
	* include/grub/i386/linuxbios/memory.h: Likewise.
46655
	* include/grub/i386/linuxbios/serial.h: Likewise.
46656
	* include/grub/i386/linuxbios/time.h: Likewise.
46657
46658
	* kern/i386/linuxbios/init.c: Likewise.
46659
	* kern/i386/linuxbios/startup.S: Likewise.
46660
	* kern/i386/linuxbios/table.c: Likewise.
46661
46662
2007-10-31  Marco Gerards  <marco@gnu.org>
46663
46664
	* conf/i386-pc.rmk (pkgdata_MODULES): Add `ata.mod'.
46665
	(ata_mod_SOURCES): New variable.
46666
	(ata_mod_CFLAGS): Likewise.
46667
	(ata_mod_LDFLAGS): Likewise.
46668
46669
	* disk/ata.c: New file.
46670
46671
	* include/grub/disk.h (grub_disk_dev_id): Add
46672
	`GRUB_DISK_DEV_ATA_ID'.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46673
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
46674
2007-10-31  Robert Millan  <rmh@aybabtu.com>
46675
46676
	* include/grub/i386/pc/init.h (grub_lower_mem): Moved from here ...
46677
	* include/grub/i386/pc/memory.h (grub_lower_mem): ... to here.
46678
46679
	* include/grub/i386/pc/init.h (grub_upper_mem): Moved from here ...
46680
	* include/grub/i386/pc/memory.h (grub_upper_mem): ... to here.
46681
46682
	* include/grub/i386/pc/memory.h: Include `<grub/symbol.h>' and
46683
	`<grub/types.h>'.
46684
46685
	* loader/i386/pc/multiboot.c: Include `<grub/machine/memory.h>'.
46686
46687
2007-10-27  Robert Millan  <rmh@aybabtu.com>
46688
46689
	* include/grub/types.h (ULONG_MAX): Define macro.
46690
46691
2007-10-22  Robert Millan  <rmh@aybabtu.com>
46692
46693
	* kern/i386/pc/startup.S: Remove `"kern/i386/realmode.S"'.  Include
46694
	`"../realmode.S"'.
46695
	Remove `"kern/i386/loader.S"'.  Include `"../loader.S"'.
46696
46697
2007-10-22  Robert Millan  <rmh@aybabtu.com>
46698
46699
	* conf/i386-pc.rmk (kernel_img_SOURCES): Remove `disk/i386/pc/biosdisk.c'.
46700
	(pkgdata_MODULES): Add `biosdisk.mod'.
46701
	(biosdisk_mod_SOURCES, biosdisk_mod_CFLAGS, biosdisk_mod_LDFLAGS): New
46702
	variables.
46703
46704
	* disk/i386/pc/biosdisk.c: Include `<grub/dl.h>'.
46705
	(grub_biosdisk_init): Replace with ...
46706
	(GRUB_MOD_INIT(biosdisk)): ... this.
46707
	(grub_biosdisk_fini): Replace with ...
46708
	(GRUB_MOD_FINI(biosdisk)): ... this.
46709
46710
	* kern/i386/pc/init.c: Remove `<grub/machine/biosdisk.h>'.
46711
	(grub_machine_init): Remove call to grub_biosdisk_init().
46712
	(grub_machine_fini): Remove call to grub_machine_fini().
46713
46714
	* util/i386/pc/grub-install.in (modules): Add `biosdisk'.
46715
46716
2007-10-22  Robert Millan  <rmh@aybabtu.com>
46717
46718
	* include/grub/time.h: New file.
46719
	* include/grub/i386/time.h: Likewise.
46720
	* include/grub/powerpc/time.h: Likewise.
46721
	* include/grub/sparc64/time.h: Likewise.
46722
46723
	* include/grub/i386/pc/time.h (KERNEL_TIME_HEADER): Rename all
46724
	instances to ...
46725
	(KERNEL_MACHINE_TIME_HEADER): ... this.
46726
	* include/grub/powerpc/ieee1275/time.h (KERNEL_TIME_HEADER): Rename all
46727
	instances to ...
46728
	(KERNEL_MACHINE_TIME_HEADER): ... this.
46729
	* include/grub/sparc64/ieee1275/time.h (KERNEL_TIME_HEADER): Rename all
46730
	instances to ...
46731
	(KERNEL_MACHINE_TIME_HEADER): ... this.
46732
46733
	* kern/i386/efi/init.c: Include `<grub/time.h>'.
46734
	(grub_millisleep): New function.
46735
	* kern/i386/pc/init.c: Include `<grub/time.h>'.
46736
	(grub_millisleep): New function.
46737
	* kern/powerpc/ieee1275/init.c: Include `<grub/time.h>'.
46738
	Remove `grub/machine/time.h' include.
46739
	(grub_millisleep): New function.
46740
	* kern/sparc64/ieee1275/init.c: Include `<grub/time.h>'.
46741
	Remove `grub/machine/time.h' include.
46742
	(grub_millisleep): New function.
46743
46744
	* include/grub/misc.h (grub_div_roundup): New function.
46745
46746
	* kern/misc.c: Include `<grub/time.h>'.
46747
	(grub_millisleep_generic): New function.
46748
46749
	* conf/i386-efi.rmk (kernel_mod_HEADERS): Remove `i386/efi/time.h'.
46750
	Add `time.h'.
46751
	* conf/i386-pc.rmk (kernel_img_HEADERS): Remove `machine/time.h'.
46752
	Add `time.h'.
46753
	* conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): Remove
46754
	`machine/time.h'.  Add `time.h'.
46755
	* conf/sparc64-ieee1275.rmk (kernel_elf_HEADERS): Likewise.
46756
46757
2007-10-21  Robert Millan  <rmh@aybabtu.com>
46758
46759
	* include/grub/misc.h (grub_max): New function.
46760
46761
2007-10-21  Robert Millan  <rmh@aybabtu.com>
46762
46763
	* util/misc.c (grub_util_info): Call fflush() before returning.
46764
46765
2007-10-20  Robert Millan  <rmh@aybabtu.com>
46766
46767
	* genmk.rb (Image): Copy `extra_flags' from here ...
46768
	(PModule): ... to here.  Use it in `#{obj}: #{src}' rule.
46769
46770
	* commands/i386/cpuid.c (grub_cmd_cpuid): Add __attribute__ ((unused))
46771
	to `argc' and `args' arguments.
46772
46773
2007-10-17  Robert Millan  <rmh@aybabtu.com>
46774
46775
	* kern/i386/loader.S: New file.
46776
46777
	* kern/i386/pc/startup.S (grub_linux_prot_size): Moved from here ...
46778
	* kern/i386/loader.S (grub_linux_prot_size)... to here.
46779
	* kern/i386/pc/startup.S (grub_linux_tmp_addr): Moved from here ...
46780
	* kern/i386/loader.S (grub_linux_tmp_addr)... to here.
46781
	* kern/i386/pc/startup.S (grub_linux_real_addr): Moved from here ...
46782
	* kern/i386/loader.S (grub_linux_real_addr)... to here.
46783
	* kern/i386/pc/startup.S (grub_linux_boot_zimage): Moved from here ...
46784
	* kern/i386/loader.S (grub_linux_boot_zimage)... to here.
46785
	* kern/i386/pc/startup.S (grub_linux_boot_bzimage): Moved from here ...
46786
	* kern/i386/loader.S (grub_linux_boot_bzimage)... to here.
46787
	* kern/i386/pc/startup.S (grub_multiboot_real_boot): Moved from here ...
46788
	* kern/i386/loader.S (grub_multiboot_real_boot)... to here.
46789
	* kern/i386/pc/startup.S (grub_multiboot2_real_boot): Moved from here ...
46790
	* kern/i386/loader.S (grub_multiboot2_real_boot)... to here.
46791
46792
	* kern/i386/realmode.S: New file.
46793
46794
	* kern/i386/pc/startup.S (protstack): Moved from here ...
46795
	* kern/i386/realmode.S (protstack)... to here.
46796
	* kern/i386/pc/startup.S (gdt): Moved from here ...
46797
	* kern/i386/realmode.S (gdt)... to here.
46798
	* kern/i386/pc/startup.S (prot_to_real): Moved from here ...
46799
	* kern/i386/realmode.S (prot_to_real)... to here.
46800
46801
	* kern/i386/pc/startup.S: Include `kern/i386/loader.S' and
46802
	`kern/i386/realmode.S'.
46803
46804
2007-10-17  Robert Millan  <rmh@aybabtu.com>
46805
46806
	* include/grub/i386/loader.h: New file.
46807
46808
	* include/grub/i386/pc/loader.h (grub_linux_prot_size)
46809
	(grub_linux_tmp_addr, grub_linux_real_addr, grub_os_area_addr)
46810
	(grub_os_area_size, grub_linux_boot_zimage, grub_linux_boot_bzimage)
46811
	(grub_multiboot_real_boot, grub_multiboot2_real_boot)
46812
	(grub_rescue_cmd_linux, grub_rescue_cmd_initrd): Moved from here ...
46813
	* include/grub/i386/loader.h (grub_linux_prot_size)
46814
	(grub_linux_tmp_addr, grub_linux_real_addr, grub_os_area_addr)
46815
	(grub_os_area_size, grub_linux_boot_zimage, grub_linux_boot_bzimage)
46816
	(grub_multiboot_real_boot, grub_multiboot2_real_boot)
46817
	(grub_rescue_cmd_linux, grub_rescue_cmd_initrd): ... to here.
46818
46819
	* include/grub/i386/pc/loader.h: Include `grub/cpu/loader.h'.
46820
46821
2007-10-15  Robert Millan  <rmh@aybabtu.com>
46822
46823
	* normal/misc.c (grub_normal_print_device_info): Do not probe for
46824
	filesystem when dev->disk is unset.
46825
	Do probe for filesystem even when dev->disk->has_partitions is set.
46826
	In case a filesystem is found, always report it.
46827
	In case it isn't, if dev->disk->has_partitions is set, report that
46828
	a partition table was found instead of reporting that no filesystem
46829
	could be identified.
46830
46831
2007-10-12  Robert Millan  <rmh@aybabtu.com>
46832
46833
	* conf/powerpc-ieee1275.rmk (grub_mkimage_SOURCES): Replace reference
46834
	to util/powerpc/ieee1275/grub-mkimage.c with util/elf/grub-mkimage.c.
46835
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46836
	* include/grub/types.h (grub_host_to_target16): New macro.
46837
	(grub_host_to_target32): Likewise.
46838
	(grub_host_to_target64): Likewise.
46839
	(grub_target_to_host16): Likewise.
46840
	(grub_target_to_host32): Likewise.
46841
	(grub_target_to_host64): Likewise.
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
46842
46843
	* include/grub/powerpc/ieee1275/kernel.h (GRUB_IEEE1275_MOD_ALIGN):
46844
	Renamed from to ...
46845
	(GRUB_MOD_ALIGN): ...this.  Update all users.
46846
1.1.8 by Robert Millan
Import upstream version 1.95+20080128
46847
	* util/elf/grub-mkimage.c (load_note): Replace grub_cpu_to_be32 with
46848
	grub_host_to_target32.
46849
	Replace grub_be_to_cpu32 with grub_target_to_host32.
46850
	(load_modules): Likewise.
46851
	(add_segments): Replace grub_be_to_cpu16 with grub_target_to_host16.
46852
	Replace grub_be_to_cpu32 with grub_target_to_host32.
46853
	Replace grub_cpu_to_be16 with grub_host_to_target16.
46854
	Replace grub_cpu_to_be32 grub_host_to_target32.
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
46855
46856
2007-10-12  Robert Millan  <rmh@aybabtu.com>
46857
46858
	* util/powerpc/ieee1275/grub-mkimage.c: Moved to ...
46859
	* util/elf/grub-mkimage.c: ... here.
46860
46861
	* DISTLIST: Add `util/elf/grub-mkimage.c'.  Remove
46862
	`util/powerpc/ieee1275/grub-mkimage.c'.
46863
46864
2007-10-07  Robert Millan  <rmh@aybabtu.com>
46865
46866
	* kern/powerpc/ieee1275/init.c: Rename HEAP_LIMIT to HEAP_MAX_ADDR,
46867
	and make it easier to figure out.
46868
	Add HEAP_MIN_SIZE and HEAP_MAX_ADDR definitions.
46869
	(grub_claim_heap): Use HEAP_MAX_ADDR rather than taking a parameter.
46870
	Do not avoid claiming a region above HEAP_MAX_ADDR if that would
46871
	leave us with less than HEAP_MIN_SIZE total heap.
46872
	Avoid our total amount of heap to surpass HEAP_MAX_SIZE.
46873
46874
2007-10-03  Robert Millan  <rmh@aybabtu.com>
46875
46876
	* include/grub/i386/io.h: New file.
46877
	* commands/i386/pc/play.c (inb): Removed.
46878
	(outb): Removed.
46879
	Include grub/cpu/io.h.  Replace inb() with grub_inb() and outb()
46880
	with grub_outb().
46881
	* term/i386/pc/serial.c  (inb): Removed.
46882
	(outb): Removed.
46883
	Include grub/cpu/io.h.  Replace inb() with grub_inb() and outb()
46884
	with grub_outb().
46885
	* term/i386/pc/vga.c  (inb): Removed.
46886
	(outb): Removed.
46887
	Include grub/cpu/io.h.  Replace inb() with grub_inb() and outb()
46888
	with grub_outb().
46889
46890
2007-10-02  Robert Millan  <rmh@aybabtu.com>
46891
46892
	* conf/i386-efi.rmk (grub_emu_SOURCES): Add util/hostfs.c.
46893
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
46894
	Reported by Marcin Kurek.
46895
46896
2007-09-07  Robert Millan  <rmh@aybabtu.com>
46897
46898
	* kern/powerpc/ieee1275/cmain.c (grub_ieee1275_test_flag): Detect
46899
	SmartFirmware version updates (as released by Sven Luther), and avoid
46900
	setting GRUB_IEEE1275_FLAG_NO_PARTITION_0 or
46901
	GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS unless the running version is
46902
	known broken.
46903
46904
2007-09-03  Yoshinori K. Okuji  <okuji@enbug.org>
46905
46906
	From Hitoshi Ozeki:
46907
	* kern/i386/pc/init.c (compact_mem_regions): Decrease NUM_REGIONS
46908
	when merging two regions.
46909
46910
2007-09-03  Yoshinori K. Okuji  <okuji@enbug.org>
46911
46912
	* kern/rescue.c (grub_enter_rescue_mode): Free ARGS.
46913
	* normal/completion.c (grub_normal_do_completion): Likewise.
46914
	Reported by Hitoshi Ozeki.
46915
46916
2007-09-03  Yoshinori K. Okuji  <okuji@enbug.org>
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46917
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
46918
	Do not use devices at boot in chainloading.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
46919
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
46920
	* loader/i386/pc/chainloader.c (boot_drive): New variable.
46921
	(boot_part_addr): Likewise.
46922
	(grub_chainloader_boot): Simply call grub_chainloader_real_boot
46923
	with BOOT_DRIVE and BOOT_PART_ADDR.
46924
	(grub_chainloader_cmd): Set BOOT_DRIVE and BOOT_PART_ADDR.
46925
	Reported by Hitoshi Ozeki <h-ozeki@ck2.so-net.ne.jp>.
46926
46927
2007-08-29  Robert Millan  <rmh@aybabtu.com>
46928
46929
	Patch from Simon Peter <dn.tlp@gmx.net>:
46930
	* genmk.rb (Utility): Append $(#{src}_DEPENDENCIES) to #{obj} targets.
46931
	* conf/i386-pc.rmk: Replace grub-probe_DEPENDENCIES with
46932
	util/grub-probe.c_DEPENDENCIES.  Replace grub-setup_DEPENDENCIES with
46933
	util/i386/pc/grub-setup.c_DEPENDENCIES.
46934
	* conf/i386-efi.rmk: Replace grub-probe_DEPENDENCIES with
46935
	util/grub-probe.c_DEPENDENCIES.
46936
	* conf/powerpc-ieee1275.rmk: Likewise.
46937
46938
2007-08-28  Robert Millan  <rmh@aybabtu.com>
46939
46940
	* util/i386/get_disk_name.c: New.  Implement grub_util_get_disk_name()
46941
	to tell grub-mkdevicemap how to name devices.
46942
	* util/ieee1275/get_disk_name.c: Likewise (using "ofpathname -a"
46943
	feature).
46944
46945
	* conf/i386-efi.rmk (grub_mkdevicemap_SOURCES): Add
46946
	util/i386/get_disk_name.c.
46947
	* conf/i386-pc.rmk (grub_mkdevicemap_SOURCES): Likewise.
46948
	* conf/powerpc-ieee1275.rmk (grub_mkdevicemap_SOURCES): Add
46949
	util/ieee1275/get_disk_name.c.
46950
46951
	* include/grub/util/misc.h: grub_util_get_disk_name() declaration.
46952
46953
	* DISTLIST: Add util/i386/get_disk_name.c and
46954
	util/ieee1275/get_disk_name.c.
46955
46956
	* util/grub-mkdevicemap.c: Replace device naming logic with
46957
	grub_util_get_disk_name() calls.
46958
46959
2007-08-20  Robert Millan  <rmh@aybabtu.com>
46960
46961
	* normal/menu.c (run_menu): Refer to seconds as "s" not "seconds"
46962
	(so that it works for both plural and singular quantities).
46963
46964
2007-08-05  Robert Millan  <rmh@aybabtu.com>
46965
46966
	* util/grub.d/10_linux.in (test_gt): Strip out vmlinu[xz]- prefix
46967
	so that [xz] isn't taken into account when determining order.
46968
46969
2007-08-02  Marco Gerards  <marco@gnu.org>
46970
46971
	* DISTLIST: Add `disk/host.c', `fs/ntfs.c', `include/multiboot.h',
46972
	`include/multiboot2.h', `include/grub/elfload.h',
46973
	`include/multiboot.h', `include/grub/multiboot.h',
46974
	`include/grub/multiboot_loader.h', `include/grub/multiboot2.h',
46975
	`include/grub/i386/pc/biosdisk.h', `include/grub/util/biosdisk.h',
46976
	`kern/elf.c', `loader/multiboot_loader.c',
46977
	`loader/multiboot_loader_normal.c', `loader/multiboot2.c',
46978
	`loader/i386/pc/multiboot2.c',
46979
	`loader/powerpc/ieee1275/multiboot2.c', `util/hostfs.c' and
46980
	`util/i386/pc/grub-mkrescue.in'.  Remove
46981
	`include/grub/biosdisk.h', `include/grub/i386/pc/multiboot.h',
46982
	`include/grub/i386/pc/util/biosdisk.h' and
46983
	`include/grub/powerpc/ieee1275/multiboot.h'.
46984
46985
2007-08-02  Bean  <bean123ch@gmail.com>
46986
46987
	* conf/common.rmk (pkgdata_MODULES): Add ntfs.mod.
46988
	(ntfs_mod_SOURCES): New variable.
46989
	(ntfs_mod_CFLAGS): Likewise.
46990
	(ntfs_mod_LDFLAGS): Likewise.
46991
46992
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/ntfs.c.
46993
	(grub_probe_SOURCES): Likewise.
46994
	(grub_emu_SOURCES): Likewise.
46995
46996
	* conf/i386-efi.rmk (grub_probe_SOURCES): Add fs/ntfs.c.
46997
	(grub_emu_SOURCES): Likewise.
46998
46999
	* conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Add fs/ntfs.c.
47000
	(grub_emu_SOURCES): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47001
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
47002
	* conf/misc.c (grub_utf16_to_utf8): Fix unicode conversion bug.
47003
47004
	* fs/ntfs.c: New file.
47005
47006
2007-08-02  Bean  <bean123ch@gmail.com>
47007
47008
	* disk.h (grub_disk): Use NESTED_FUNC_ATTR.
47009
47010
	* file.h (grub_file): Likewise.
47011
47012
	* fshelp.h (grub_fshelp_read_file): Likewise.
47013
47014
	* util/i386/pc/grub-setup.c (setup): Likewise.
47015
	(save_first_sector): Likewise.
47016
	(save_blocklists): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47017
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
47018
	* fs/affs.c (grub_affs_read_file): Likewise.
47019
47020
	* fs/ext2.c (grub_ext2_read_file): Likewise.
47021
47022
	* fs/fat.c (grub_fat_read_data): Likewise.
47023
47024
	* fs/fshelp.c (grub_fshelp_read_file): Likewise.
47025
47026
	* fs/hfs.c (grub_hfs_read_file): Likewise.
47027
47028
	* fs/hfsplus.c (grub_hfsplus_read_file): Likewise.
47029
47030
	* fs/jfs.c (grub_jfs_read_file): Likewise.
47031
47032
	* fs/minix.c (grub_minix_read_file): Likewise.
47033
47034
	* fs/sfs.c (grub_sfs_read_file): Likewise.
47035
47036
	* fs/ufs.c (grub_ufs_read_file): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47037
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
47038
	* fs/xfs.c (grub_xfs_read_file): Likewise.
47039
47040
	* command/blocklist.c (read_blocklist): Likewise.
47041
	(print_blocklist): Likewise.
47042
47043
2007-08-02  Marco Gerards  <marco@gnu.org>
47044
47045
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/host.c' and
47046
	`util/hostfs.c'.
47047
47048
	* disk/host.c: New file.
47049
47050
	* util/hostfs.c: Likewise.
47051
47052
	* fs/hfsplus.c (grub_hfsplus_mount): When reading out of disk,
47053
	return `GRUB_ERR_BAD_FS'.
47054
	* fs/sfs.c (grub_sfs_mount): Likewise.
47055
	* fs/xfs.c (grub_xfs_mount): Likewise.
47056
47057
	* include/grub/disk.h (enum grub_disk_dev_id): Add
47058
	`GRUB_DISK_DEVICE_HOST_ID'.
47059
47060
	* util/grub-emu.c (main): Initialize and de-initialize hostfs.
47061
47062
2007-07-24  Jerone Young  <jerone@gmail.com>
47063
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47064
	* conf/i386-pc.rmk: Add Multiboot loader and multiboot 2 to multiboot
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
47065
	modules for compilation.
47066
	* conf/powerpc-ieee1275.rmk: Likewise.
47067
47068
	* include/multiboot.h: Move multiboot definitions to one file. Rename
47069
	many definitions to not get grub specific.
47070
	* include/multiboot2.h: Create header with multiboot 2 definitions.
47071
	* include/grub/multiboot.h: Header for grub specific function
47072
	prototypes and definitions.
47073
	* include/grub/multiboot2.h: Likewise.
47074
	* include/grub/multiboot_loader.h: Likewise.
47075
	* include/grub/i386/pc/multiboot.h: Removed.
47076
	* include/grub/powerpc/ieee1275/multiboot.h: Removed.
47077
47078
	* loader/multiboot_loader.c: Created to act as a proxy for multiboot 1
47079
	and 2 to allow for one multiboot and module commands.
47080
	* loader/multiboot2.c: Add multiboot2 functionality.
47081
	* loader/i386/pc/multiboot.c: Modify for new multiboot header location
47082
	and definition names.
47083
	* loader/i386/pc/multiboot2.c: Created to add i386 specific multiboot
47084
	2 functions.
47085
	* loader/powerpc/ieee1275/multiboot2.c: Created to add powerpc
47086
	ieee1275 specific multiboot2 code.
47087
47088
	* kern/i386/pc/startup.S: Change headers and definition names for
47089
	multiboot. Add function grub_multiboot2_real_boot for multiboot 2.
47090
47091
2007-07-22  Robert Millan  <rmh@aybabtu.com>
47092
47093
	* geninitheader.sh: Process file specified in first parameter rather
47094
	than hardcoding grub_modules_init.lst.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47095
	* geninit.sh: Likewise.  Also, construct header name dynamically rather
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
47096
	than hardcoding grub_modules_init.h.
47097
47098
	* conf/common.rmk: Rename grub_modules_init.[ch] files associated with
47099
	grub-emu to grub_emu_init.[ch].  Add rules to build analogous
47100
	grub_probe_init.[ch] and grub_setup_init.[ch].
47101
47102
	* conf/powerpc-ieee1275.rmk (grub_emu_DEPENDENCIES): Replace
47103
	grub_modules_init.h with grub_emu_init.h.
47104
	(grub_probe_DEPENDENCIES, grub_probe_SOURCES): Add new
47105
	grub_probe_init.[ch] files.
47106
	* conf/i386-efi.rmk: Likewise.
47107
	* conf/i386-pc.rmk: Likewise.
47108
	(grub_setup_DEPENDENCIES, grub_setup_SOURCES): Add new
47109
	grub_setup_init.[ch] files.
47110
47111
	* util/grub-emu.c: Replace grub_modules_init.h with grub_emu_init.h.
47112
	* util/grub-probe.c: Include grub_probe_init.h.  Use grub_init_all()
47113
	to initialize modules rather than a list of hardcoded functions.
47114
	* util/i386/pc/grub-setup.c: Include grub_setup_init.h.  Use
47115
	grub_init_all() to initialize modules rather than a list of hardcoded
47116
	functions.
47117
47118
2007-07-22  Robert Millan  <rmh@aybabtu.com>
47119
47120
	* kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): Set
47121
	GRUB_IEEE1275_FLAG_NO_PARTITION_0 flag when running on SmartFirmware.
47122
47123
2007-07-22  Robert Millan  <rmh@aybabtu.com>
47124
47125
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): Add
47126
	GRUB_IEEE1275_FLAG_BROKEN_OUTPUT flag.
47127
	* kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): Set this
47128
	flag when running on SmartFirmware.
47129
	* term/ieee1275/ofconsole.c (grub_ofconsole_init): Avoid running
47130
	"output-device output" command when GRUB_IEEE1275_FLAG_BROKEN_OUTPUT
47131
	was set.
47132
47133
	* kern/powerpc/ieee1275/openfw.c (grub_ieee1275_encode_devname):
47134
	Increase partno when GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS flag is set,
47135
	rather than decreasing it.
47136
47137
	* util/i386/pc/grub-setup.c (setup): When embedding is required, but
47138
	there's not enough space to do it, fail in the same way as when it
47139
	can't be done because there are no partitions.
47140
47141
	* util/powerpc/ieee1275/grub-install.in: Improve error message shown
47142
	when nvsetenv failed.
47143
47144
2007-07-22  Yoshinori K. Okuji  <okuji@enbug.org>
47145
47146
	* conf/i386-pc.rmk (CLEANFILES): Removed for grub-mkrescue,
47147
	because this rule is automatically generated.
47148
	(grub-mkrescue): Removed for the same reason as above.
47149
47150
2007-07-22  Yoshinori K. Okuji  <okuji@enbug.org>
47151
47152
	Migrate to GNU General Public License Version 3.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47153
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
47154
	* COPYING: Replaced with the plain text version of GPLv3.
47155
47156
	* config.guess: Updated from gnulib.
47157
	* config.sub: Likewise.
47158
47159
	* geninit.sh: Output a GPLv3 copyright notice.
47160
	* geninitheader.sh: Likewise.
47161
	* genmodsrc.sh: Likewise.
47162
	* gensymlist.sh.in: Likewise.
47163
47164
	* boot/i386/pc/boot.S: Upgraded to GPLv3.
47165
	* boot/i386/pc/diskboot.S: Likewise.
47166
	* boot/i386/pc/pxeboot.S: Likewise.
47167
	* commands/blocklist.c: Likewise.
47168
	* commands/boot.c: Likewise.
47169
	* commands/cat.c: Likewise.
47170
	* commands/cmp.c: Likewise.
47171
	* commands/configfile.c: Likewise.
47172
	* commands/echo.c: Likewise.
47173
	* commands/help.c: Likewise.
47174
	* commands/ls.c: Likewise.
47175
	* commands/search.c: Likewise.
47176
	* commands/terminal.c: Likewise.
47177
	* commands/test.c: Likewise.
47178
	* commands/videotest.c: Likewise.
47179
	* commands/i386/cpuid.c: Likewise.
47180
	* commands/i386/pc/halt.c: Likewise.
47181
	* commands/i386/pc/play.c: Likewise.
47182
	* commands/i386/pc/reboot.c: Likewise.
47183
	* commands/i386/pc/vbeinfo.c: Likewise.
47184
	* commands/i386/pc/vbetest.c: Likewise.
47185
	* commands/ieee1275/halt.c: Likewise.
47186
	* commands/ieee1275/reboot.c: Likewise.
47187
	* commands/ieee1275/suspend.c: Likewise.
47188
	* disk/loopback.c: Likewise.
47189
	* disk/lvm.c: Likewise.
47190
	* disk/raid.c: Likewise.
47191
	* disk/efi/efidisk.c: Likewise.
47192
	* disk/i386/pc/biosdisk.c: Likewise.
47193
	* disk/ieee1275/ofdisk.c: Likewise.
47194
	* font/manager.c: Likewise.
47195
	* fs/affs.c: Likewise.
47196
	* fs/ext2.c: Likewise.
47197
	* fs/fat.c: Likewise.
47198
	* fs/fshelp.c: Likewise.
47199
	* fs/hfs.c: Likewise.
47200
	* fs/hfsplus.c: Likewise.
47201
	* fs/iso9660.c: Likewise.
47202
	* fs/jfs.c: Likewise.
47203
	* fs/minix.c: Likewise.
47204
	* fs/sfs.c: Likewise.
47205
	* fs/ufs.c: Likewise.
47206
	* fs/xfs.c: Likewise.
47207
	* hello/hello.c: Likewise.
47208
	* include/grub/acorn_filecore.h: Likewise.
47209
	* include/grub/arg.h: Likewise.
47210
	* include/grub/bitmap.h: Likewise.
47211
	* include/grub/boot.h: Likewise.
47212
	* include/grub/cache.h: Likewise.
47213
	* include/grub/device.h: Likewise.
47214
	* include/grub/disk.h: Likewise.
47215
	* include/grub/dl.h: Likewise.
47216
	* include/grub/elfload.h: Likewise.
47217
	* include/grub/env.h: Likewise.
47218
	* include/grub/err.h: Likewise.
47219
	* include/grub/file.h: Likewise.
47220
	* include/grub/font.h: Likewise.
47221
	* include/grub/fs.h: Likewise.
47222
	* include/grub/fshelp.h: Likewise.
47223
	* include/grub/gzio.h: Likewise.
47224
	* include/grub/hfs.h: Likewise.
47225
	* include/grub/kernel.h: Likewise.
47226
	* include/grub/loader.h: Likewise.
47227
	* include/grub/lvm.h: Likewise.
47228
	* include/grub/misc.h: Likewise.
47229
	* include/grub/mm.h: Likewise.
47230
	* include/grub/net.h: Likewise.
47231
	* include/grub/normal.h: Likewise.
47232
	* include/grub/parser.h: Likewise.
47233
	* include/grub/partition.h: Likewise.
47234
	* include/grub/pc_partition.h: Likewise.
47235
	* include/grub/raid.h: Likewise.
47236
	* include/grub/rescue.h: Likewise.
47237
	* include/grub/script.h: Likewise.
47238
	* include/grub/setjmp.h: Likewise.
47239
	* include/grub/symbol.h: Likewise.
47240
	* include/grub/term.h: Likewise.
47241
	* include/grub/terminfo.h: Likewise.
47242
	* include/grub/tparm.h: Likewise.
47243
	* include/grub/types.h: Likewise.
47244
	* include/grub/video.h: Likewise.
47245
	* include/grub/efi/api.h: Likewise.
47246
	* include/grub/efi/chainloader.h: Likewise.
47247
	* include/grub/efi/console.h: Likewise.
47248
	* include/grub/efi/console_control.h: Likewise.
47249
	* include/grub/efi/disk.h: Likewise.
47250
	* include/grub/efi/efi.h: Likewise.
47251
	* include/grub/efi/pe32.h: Likewise.
47252
	* include/grub/efi/time.h: Likewise.
47253
	* include/grub/i386/linux.h: Likewise.
47254
	* include/grub/i386/setjmp.h: Likewise.
47255
	* include/grub/i386/types.h: Likewise.
47256
	* include/grub/i386/efi/kernel.h: Likewise.
47257
	* include/grub/i386/efi/loader.h: Likewise.
47258
	* include/grub/i386/efi/time.h: Likewise.
47259
	* include/grub/i386/pc/biosdisk.h: Likewise.
47260
	* include/grub/i386/pc/boot.h: Likewise.
47261
	* include/grub/i386/pc/chainloader.h: Likewise.
47262
	* include/grub/i386/pc/console.h: Likewise.
47263
	* include/grub/i386/pc/init.h: Likewise.
47264
	* include/grub/i386/pc/kernel.h: Likewise.
47265
	* include/grub/i386/pc/loader.h: Likewise.
47266
	* include/grub/i386/pc/memory.h: Likewise.
47267
	* include/grub/i386/pc/multiboot.h: Likewise.
47268
	* include/grub/i386/pc/serial.h: Likewise.
47269
	* include/grub/i386/pc/time.h: Likewise.
47270
	* include/grub/i386/pc/vbe.h: Likewise.
47271
	* include/grub/i386/pc/vbeblit.h: Likewise.
47272
	* include/grub/i386/pc/vbefill.h: Likewise.
47273
	* include/grub/i386/pc/vbeutil.h: Likewise.
47274
	* include/grub/i386/pc/vga.h: Likewise.
47275
	* include/grub/ieee1275/ieee1275.h: Likewise.
47276
	* include/grub/ieee1275/ofdisk.h: Likewise.
47277
	* include/grub/powerpc/libgcc.h: Likewise.
47278
	* include/grub/powerpc/setjmp.h: Likewise.
47279
	* include/grub/powerpc/types.h: Likewise.
47280
	* include/grub/powerpc/ieee1275/biosdisk.h: Likewise.
47281
	* include/grub/powerpc/ieee1275/console.h: Likewise.
47282
	* include/grub/powerpc/ieee1275/ieee1275.h: Likewise.
47283
	* include/grub/powerpc/ieee1275/kernel.h: Likewise.
47284
	* include/grub/powerpc/ieee1275/loader.h: Likewise.
47285
	* include/grub/powerpc/ieee1275/multiboot.h: Likewise.
47286
	* include/grub/powerpc/ieee1275/time.h: Likewise.
47287
	* include/grub/powerpc/ieee1275/util/biosdisk.h: Likewise.
47288
	* include/grub/sparc64/libgcc.h: Likewise.
47289
	* include/grub/sparc64/setjmp.h: Likewise.
47290
	* include/grub/sparc64/types.h: Likewise.
47291
	* include/grub/sparc64/ieee1275/console.h: Likewise.
47292
	* include/grub/sparc64/ieee1275/ieee1275.h: Likewise.
47293
	* include/grub/sparc64/ieee1275/kernel.h: Likewise.
47294
	* include/grub/sparc64/ieee1275/time.h: Likewise.
47295
	* include/grub/util/biosdisk.h: Likewise.
47296
	* include/grub/util/getroot.h: Likewise.
47297
	* include/grub/util/lvm.h: Likewise.
47298
	* include/grub/util/misc.h: Likewise.
47299
	* include/grub/util/raid.h: Likewise.
47300
	* include/grub/util/resolve.h: Likewise.
47301
	* io/gzio.c: Likewise.
47302
	* kern/device.c: Likewise.
47303
	* kern/disk.c: Likewise.
47304
	* kern/dl.c: Likewise.
47305
	* kern/elf.c: Likewise.
47306
	* kern/env.c: Likewise.
47307
	* kern/err.c: Likewise.
47308
	* kern/file.c: Likewise.
47309
	* kern/fs.c: Likewise.
47310
	* kern/loader.c: Likewise.
47311
	* kern/main.c: Likewise.
47312
	* kern/misc.c: Likewise.
47313
	* kern/mm.c: Likewise.
47314
	* kern/parser.c: Likewise.
47315
	* kern/partition.c: Likewise.
47316
	* kern/rescue.c: Likewise.
47317
	* kern/term.c: Likewise.
47318
	* kern/efi/efi.c: Likewise.
47319
	* kern/efi/init.c: Likewise.
47320
	* kern/efi/mm.c: Likewise.
47321
	* kern/i386/dl.c: Likewise.
47322
	* kern/i386/efi/init.c: Likewise.
47323
	* kern/i386/efi/startup.S: Likewise.
47324
	* kern/i386/pc/init.c: Likewise.
47325
	* kern/i386/pc/lzo1x.S: Likewise.
47326
	* kern/i386/pc/startup.S: Likewise.
47327
	* kern/ieee1275/ieee1275.c: Likewise.
47328
	* kern/powerpc/cache.S: Likewise.
47329
	* kern/powerpc/dl.c: Likewise.
47330
	* kern/powerpc/ieee1275/cmain.c: Likewise.
47331
	* kern/powerpc/ieee1275/crt0.S: Likewise.
47332
	* kern/powerpc/ieee1275/init.c: Likewise.
47333
	* kern/powerpc/ieee1275/openfw.c: Likewise.
47334
	* kern/sparc64/cache.S: Likewise.
47335
	* kern/sparc64/dl.c: Likewise.
47336
	* kern/sparc64/ieee1275/init.c: Likewise.
47337
	* kern/sparc64/ieee1275/openfw.c: Likewise.
47338
	* loader/efi/chainloader.c: Likewise.
47339
	* loader/efi/chainloader_normal.c: Likewise.
47340
	* loader/i386/efi/linux.c: Likewise.
47341
	* loader/i386/efi/linux_normal.c: Likewise.
47342
	* loader/i386/pc/chainloader.c: Likewise.
47343
	* loader/i386/pc/chainloader_normal.c: Likewise.
47344
	* loader/i386/pc/linux.c: Likewise.
47345
	* loader/i386/pc/linux_normal.c: Likewise.
47346
	* loader/i386/pc/multiboot.c: Likewise.
47347
	* loader/i386/pc/multiboot_normal.c: Likewise.
47348
	* loader/powerpc/ieee1275/linux.c: Likewise.
47349
	* loader/powerpc/ieee1275/linux_normal.c: Likewise.
47350
	* normal/arg.c: Likewise.
47351
	* normal/cmdline.c: Likewise.
47352
	* normal/command.c: Likewise.
47353
	* normal/completion.c: Likewise.
47354
	* normal/execute.c: Likewise.
47355
	* normal/function.c: Likewise.
47356
	* normal/lexer.c: Likewise.
47357
	* normal/main.c: Likewise.
47358
	* normal/menu.c: Likewise.
47359
	* normal/menu_entry.c: Likewise.
47360
	* normal/misc.c: Likewise.
47361
	* normal/parser.y: Likewise.
47362
	* normal/script.c: Likewise.
47363
	* normal/i386/setjmp.S: Likewise.
47364
	* normal/powerpc/setjmp.S: Likewise.
47365
	* normal/sparc64/setjmp.S: Likewise.
47366
	* partmap/acorn.c: Likewise.
47367
	* partmap/amiga.c: Likewise.
47368
	* partmap/apple.c: Likewise.
47369
	* partmap/gpt.c: Likewise.
47370
	* partmap/pc.c: Likewise.
47371
	* partmap/sun.c: Likewise.
47372
	* term/gfxterm.c: Likewise.
47373
	* term/terminfo.c: Likewise.
47374
	* term/efi/console.c: Likewise.
47375
	* term/i386/pc/console.c: Likewise.
47376
	* term/i386/pc/serial.c: Likewise.
47377
	* term/i386/pc/vesafb.c: Likewise.
47378
	* term/i386/pc/vga.c: Likewise.
47379
	* term/ieee1275/ofconsole.c: Likewise.
47380
	* util/biosdisk.c: Likewise.
47381
	* util/console.c: Likewise.
47382
	* util/genmoddep.c: Likewise.
47383
	* util/getroot.c: Likewise.
47384
	* util/grub-emu.c: Likewise.
47385
	* util/grub-mkdevicemap.c: Likewise.
47386
	* util/grub-probe.c: Likewise.
47387
	* util/lvm.c: Likewise.
47388
	* util/misc.c: Likewise.
47389
	* util/raid.c: Likewise.
47390
	* util/resolve.c: Likewise.
47391
	* util/update-grub.in: Likewise.
47392
	* util/update-grub_lib.in: Likewise.
47393
	* util/grub.d/00_header.in: Likewise.
47394
	* util/grub.d/10_hurd.in: Likewise.
47395
	* util/grub.d/10_linux.in: Likewise.
47396
	* util/i386/efi/grub-install.in: Likewise.
47397
	* util/i386/efi/grub-mkimage.c: Likewise.
47398
	* util/i386/pc/grub-install.in: Likewise.
47399
	* util/i386/pc/grub-mkimage.c: Likewise.
47400
	* util/i386/pc/grub-mkrescue.in: Likewise.
47401
	* util/i386/pc/grub-setup.c: Likewise.
47402
	* util/i386/pc/misc.c: Likewise.
47403
	* util/powerpc/ieee1275/grub-install.in: Likewise.
47404
	* util/powerpc/ieee1275/grub-mkimage.c: Likewise.
47405
	* util/powerpc/ieee1275/misc.c: Likewise.
47406
	* video/bitmap.c: Likewise.
47407
	* video/video.c: Likewise.
47408
	* video/i386/pc/vbe.c: Likewise.
47409
	* video/i386/pc/vbeblit.c: Likewise.
47410
	* video/i386/pc/vbefill.c: Likewise.
47411
	* video/i386/pc/vbeutil.c: Likewise.
47412
	* video/readers/tga.c: Likewise.
47413
47414
2007-07-02  Robert Millan  <rmh@aybabtu.com>
47415
47416
	* conf/i386-efi.rmk: Replace obsolete reference to
47417
	util/i386/pc/biosdisk.c with util/biosdisk.c, and util/i386/pc/getroot.c
47418
	with util/getroot.c.
47419
	* conf/powerpc-ieee1275.rmk: Likewise.
47420
	* conf/sparc64-ieee1275.rmk: Likewise.
47421
47422
	* util/grub-emu.c (main): Fix unchecked pointer handling.
47423
47424
2007-07-02  Robert Millan  <rmh@aybabtu.com>
47425
47426
	* util/i386/efi/grub-install.in: Allow `grub_probe --target=partmap'
47427
	invocation to fail, in order to support partition-less media.
47428
47429
	* util/i386/pc/grub-install.in: Likewise.
47430
47431
	* util/powerpc/ieee1275/grub-install.in: Use grub-probe to determine
47432
	which fs or partmap modules are needed (akin to its sister scripts).
47433
47434
	Also use grub-probe to get rid of unportable /proc/mounts check.
47435
47436
	Print the same informational message that the other scripts do, before
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47437
	exiting.
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
47438
47439
2007-06-23  Robert Millan  <rmh@aybabtu.com>
47440
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47441
	* util/update-grub_lib.in (font_path): New function.  Determine whether
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
47442
	a font file can be found and, if so, echo the GRUB path to it.
47443
47444
	* util/update-grub.in: Handle multiple terminals depending on user
47445
	input, platform availability and font file presence.  Propagate
47446
	variables of our findings to /etc/grub.d/ children.
47447
47448
	* util/grub.d/00_header.in: Handle multiple terminals, based on
47449
	environment setup by update-grub.
47450
47451
2007-06-23  Robert Millan  <rmh@aybabtu.com>
47452
47453
	* conf/i386-pc.rmk (pkgdata_MODULES): Add serial.mod.
47454
47455
2007-06-21  Robert Millan  <rmh@aybabtu.com>
47456
47457
	* include/grub/i386/pc/kernel.h: Define GRUB_KERNEL_MACHINE_DATA_END to
47458
	indicate end of data section in kernel image.
47459
	* include/grub/i386/efi/kernel.h: Define GRUB_KERNEL_MACHINE_PREFIX and
47460
	GRUB_KERNEL_MACHINE_DATA_END.
47461
47462
	* kern/i386/pc/startup.S: Do not initialize grub_prefix, only reserve
47463
	space for it.
47464
	* kern/i386/efi/startup.S: Likewise.
47465
47466
	* util/i386/pc/grub-mkimage.c: Initialize grub_prefix to /boot/grub
47467
	during image generation.  Implement --prefix option to override this
47468
	patch.
47469
	* util/i386/efi/grub-mkimage.c: Likewise.
47470
47471
	* util/update-grub_lib.in (convert_system_path_to_grub_path): Split
47472
	code to make path relative to its root into a separate function.
47473
47474
	* util/i386/pc/grub-install.in: Use newly provided
47475
	make_system_path_relative_to_its_root() to convert ${grubdir}, then
47476
	pass the result to grub-install --prefix.
47477
47478
2007-06-13  Robert Millan  <rmh@aybabtu.com>
47479
47480
	* include/grub/util/misc.h: Define DEFAULT_DIRECTORY and
47481
	DEFAULT_DEVICE_MAP.
47482
	* util/grub-emu.c: Use above definitions from misc.h instead of
47483
	defining them.
47484
	* util/grub-mkdevicemap.c: Likewise.
47485
	* util/i386/pc/grub-setup.c: Likewise.
47486
	* util/grub-probe.c: Likewise.
47487
	(probe): Abort with grub_util_error() when either
47488
	grub_guess_root_device or grub_util_get_grub_dev fails.
47489
47490
2007-06-12  Robert Millan  <rmh@aybabtu.com>
47491
47492
	* normal/command.c (grub_command_execute): Use NULL rather than 0 for
47493
	"pager" assignment.
47494
	* util/biosdisk.c (grub_util_biosdisk_get_grub_dev): Likewise for
47495
	"pcdata".
47496
	* util/grub-probe.c (probe): Likewise for "drive_name".
47497
47498
2007-06-11  Robert Millan  <rmh@aybabtu.com>
47499
47500
	* util/i386/pc/grub-mkrescue.in: Pad both floppy images with zeroes,
47501
	not just the cdrom one.
47502
47503
2007-06-11  Robert Millan  <rmh@aybabtu.com>
47504
47505
	* util/i386/pc/grub-mkrescue.in: Add "set -e".
47506
	Add --pkglibdir=DIR option to override pkglibdir.
47507
	Mention --image-type=TYPE in help output.
47508
	Fix --grub-mkimage (it was a no-op).
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47509
	Abort gracefully when no parameter is given.
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
47510
47511
2007-06-11  Robert Millan  <rmh@aybabtu.com>
47512
47513
	* util/i386/pc/grub-mkrescue.in: New file.
47514
	* conf/i386-pc.rmk: Add its build declarations.  Put it in bin_SCRIPTS.
47515
	* Makefile.in: Handle bin_SCRIPTS.
47516
47517
2007-06-10  Vesa Jaaskelainen  <chaac@nic.fi>
47518
47519
	* term/gfxterm.c (grub_gfxterm_init): Added support for specifying
47520
	list of video modes.
47521
47522
2007-06-06  Robert Millan  <rmh@aybabtu.com>
47523
47524
	* util/update-grub_lib.in (convert_system_path_to_grub_path): Abort if
47525
	file doesn't exist, or if it is in a filesystem grub can't read.
47526
47527
	* util/update-grub.in: Set fallback for GRUB_FS check to "unknown".  Do
47528
	not abort if GRUB_DRIVE could not be defined.  Rearrange generated
47529
	header comment to fit in 80 columns when the variables are resolved.
47530
47531
	* util/grub.d/00_header.in: Only set root variable when GRUB_DRIVE
47532
	could be identified by update-grub.  Remove redundant check for
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47533
	unifont.pff existence (since convert_system_path_to_grub_path now
1.1.7 by Robert Millan
Import upstream version 1.95+20071101
47534
	handles that).
47535
1.1.6 by Albin Tonnerre
Import upstream version 1.95+20070604
47536
2007-06-04  Robert Millan  <rmh@aybabtu.com>
47537
47538
	* conf/i386-efi.rmk (grub_probe_SOURCES): Add partmap/apple.c.
47539
47540
	* conf/i386-pc.rmk (grub_probe_SOURCES): Likewise.
47541
47542
	* conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Add partmap/pc.c.
47543
47544
2007-06-04  Robert Millan  <rmh@aybabtu.com>
47545
47546
	* conf/powerpc-ieee1275.rmk: Enable grub-mkdevicemap and grub-probe.
47547
47548
	* include/grub/partition.h: Declare grub_apple_partition_map_init and
47549
	grub_apple_partition_map_fini.
47550
47551
	* util/biosdisk.c
47552
	(grub_util_biosdisk_open): Replace BLKGETSIZE with BLKGETSIZE64 (needed
47553
	to access >2 TiB disks).
47554
47555
	Print disk->total_sectors with %llu instead of %lu, since this
47556
	variable is always 64-bit (prevents wrong disk size from being displayed
47557
	on either >2 TiB disk or big-endian CPU).
47558
47559
	(grub_util_biosdisk_get_grub_dev): Convert gpt_partition_map handling
47560
	into a generic case that supports all (sane) partition maps.
47561
47562
	Stop using grub_cpu_to_le32() on dos_part / bsd_part since it actually
47563
	breaks big-endian.
47564
47565
	* util/grub-probe.c: Call grub_apple_partition_map_init() before probe()
47566
	and grub_apple_partition_map_fini() after that.
47567
47568
2007-06-01  Robert Millan  <rmh@aybabtu.com>
47569
47570
	* util/update-grub.in: Export GRUB_CMDLINE_LINUX.
47571
47572
	* util/grub.d/00_header.in: Only enable gfxterm when
47573
	convert_system_path_to_grub_path() succeeds.
47574
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47575
2007-05-20  Robert Millan  <rmh@aybabtu.com>
47576
47577
	* util/update-grub_lib.in: New file.
47578
	* DISTLIST: Add update-grub_lib.in.
47579
	* conf/common.rmk: Generate update-grub_lib and install it in
47580
	$(lib_DATA).
47581
	* Makefile.in: Add install routine for $(lib_DATA).
47582
47583
	* util/grub.d/00_header.in: Use convert_system_path_to_grub_path()
47584
	function provided by update-grub_lib to support arbitrary paths of
47585
	unifont.pff.
47586
	* util/update-grub.in: Use convert_system_path_to_grub_path() to
47587
	initialize GRUB_DRIVE_BOOT and GRUB_DRIVE_BOOT_GRUB variables.
47588
47589
2007-05-19  Robert Millan  <rmh@aybabtu.com>
47590
47591
	* commands/i386/cpuid.c: New module.
47592
	* DISTLIST: Add it.
47593
	* conf/i386-efi.rmk: Enable cpuid.mod.
47594
	* conf/i386-pc.rmk: Likewise.
47595
47596
2007-05-18  Jeroen Dekkers  <jeroen@dekkers.cx>
47597
47598
	* kern/disk.c (grub_disk_read): Check return value of
47599
	grub_realloc().
47600
47601
2007-05-18  Jeroen Dekkers  <jeroen@dekkers.cx>
47602
47603
	* util/getroot.c (grub_util_get_grub_dev): Support partitionable
47604
	arrays.
47605
	* disk/raid.c (grub_raid_open): Likewise.
47606
47607
2007-05-17  Jeroen Dekkers  <jeroen@dekkers.cx>
47608
47609
	* util/biosdisk.c (linux_find_partition): Allocate real_dev on the
47610
	stack instead of on the heap.
47611
47612
	* kern/disk.c (grub_disk_read): Make sure tmp_buf is big enough
47613
	before doing a read on it.
47614
47615
	* configure.ac: Only use -fno-stack-protector for the target
47616
	environment.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47617
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47618
2007-05-17  Jeroen Dekkers  <jeroen@dekkers.cx>
47619
47620
	* video/i386/pc/vbe.c (grub_video_vbe_create_render_target): Add
47621
	__attribute_ ((unused)) to mode_type argument.
47622
47623
	* util/getroot.c (grub_guess_root_device): Fix #endif.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47624
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47625
	* kern/misc.c (memcmp): Fix prototype.
47626
47627
	* include/grub/partition.h [GRUB_UTIL]
47628
	(grub_gpt_partition_map_init): Add prototype.
47629
	(grub_gpt_partition_map_fini): Likewise.
47630
47631
	* fs/jfs.c (struct grub_jfs_inode): Put __attribute__ ((packed)
47632
	at the right place.
47633
47634
	* fs/fat.c (grub_fat_mount): Replace ~0UL with ~0U.
47635
	(grub_fat_read_data): Likewise.
47636
	(grub_fat_find_dir): Likewise.
47637
47638
	* font/manager.c (find_glyph): Make table a const.
47639
	(grub_font_get_glyph): Remove bitmap from if statement.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47640
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47641
2007-05-16  Jeroen Dekkers  <jeroen@dekkers.cx>
47642
47643
	* util/getroot.c (grub_guess_root_device): Remove RAID and LVM
47644
	code, first search for device in /dev/mapper, then in /dev.
47645
	(grub_util_get_grub_dev): New function.
47646
	* include/grub/util/getroot.h (grub_util_get_grub_dev): Add
47647
	prototype.
47648
	* util/grub-probe.c (probe): Remove check for RAID, call
47649
	grub_util_get_grub_dev() instead of
47650
	grub_util_biosdisk_get_grub_dev().
47651
	* util/grub-emu.c (main): Call grub_util_get_grub_dev() instead of
47652
	grub_util_biosdisk_get_grub_dev().
47653
	* util/i386/pc/grub-setup.c (main): Likewise.
47654
47655
2007-05-16  Robert Millan  <rmh@aybabtu.com>
47656
47657
	* DISTLIST: Update for the latest changes.
47658
	* conf/i386-pc.rmk: Use the new paths for util/getroot.c,
47659
	util/grub-mkdevicemap.c, util/grub-probe.c and util/biosdisk.c.
47660
	* util/grub-emu.c: Replace grub/i386/pc/util/biosdisk.h with
47661
	grub/util/biosdisk.h.
47662
	* util/i386/pc/grub-setup.c: Replace grub/machine/util/biosdisk.h with
47663
	grub/util/biosdisk.h.
47664
47665
2007-05-16  Robert Millan  <rmh@aybabtu.com>
47666
47667
	* util/grub.d/00_header.in: Set default gfxmode to `640x480'.
47668
47669
2007-05-16  Robert Millan  <rmh@aybabtu.com>
47670
47671
	* util/i386/efi/grub-install.in: New.
47672
	* conf/i386-efi.rmk: Enable grub-mkdevicemap, grub-probe and the
47673
	newly added grub-install.
47674
	* util/biosdisk.c: Remove unnecessary grub/machine/biosdisk.h
47675
	include.
47676
	* util/getroot.c: Replace grub/i386/pc/util/biosdisk.h with
47677
	grub/util/biosdisk.h.
47678
	* util/grub-probe.c: Replace grub/machine/util/biosdisk.h with
47679
	grub/util/biosdisk.h.
47680
47681
2007-05-16  Robert Millan  <rmh@aybabtu.com>
47682
47683
	* include/grub/i386/pc/util/biosdisk.h: Moved to ...
47684
	* include/grub/util/biosdisk.h: ... here.
47685
	* util/i386/pc/biosdisk.c: Moved to ...
47686
	* util/biosdisk.c: ... here.
47687
	* util/i386/pc/getroot.c: Moved to ...
47688
	* util/getroot.c: ... here.
47689
	* util/i386/pc/grub-mkdevicemap.c: Moved to ...
47690
	* util/grub-mkdevicemap.c: ... here.
47691
	* util/i386/pc/grub-probe.c: Moved to ...
47692
	* util/grub-probe.c: ... here.
47693
47694
2007-05-15  Robert Millan  <rmh@aybabtu.com>
47695
47696
	* util/update-grub.in: Remove duplicated line in grub.cfg header
47697
	message.
47698
47699
2007-05-13  Robert Millan  <rmh@aybabtu.com>
47700
47701
	* util/update-grub.in: Fix a few assumptions about the devices holding
47702
	/, /boot and /boot/grub being the same.
47703
	* util/grub.d/00_header.in: Likewise.
47704
	* util/grub.d/10_hurd.in: Likewise.
47705
	* util/grub.d/10_linux.in: Likewise.
47706
47707
	* util/grub.d/10_linux.in: Implement Linux image sorting with arbitrary
47708
	patterns.  Use that to define the `.old' suffix as older than `'.
47709
47710
	* util/grub.d/00_header.in: Set default gfxmode to `800x600x16'.
47711
47712
	* util/update-grub.in: Add a reference to ${sysconfdir}/default/grub in
47713
	the grub.cfg header message.
47714
47715
2007-05-11  Robert Millan  <rmh@aybabtu.com>
47716
47717
	* util/update-grub.in: Create device.map if it doesn't already exist,
47718
	before attempting to run grub-probe.
47719
	Check for grub-probe and grub-mkdevicemap with the same code
47720
	grub-install is using.
47721
	Remove test mode.
47722
47723
2007-05-09  Jeroen Dekkers  <jeroen@dekkers.cx>
47724
47725
	* Makefile.in: Add the datarootdir autoconf variable.
47726
47727
2007-05-09  Robert Millan  <rmh@aybabtu.com>
47728
47729
	* util/i386/pc/grub-probe.c (probe): When detecting partition map,
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47730
	fail gracefully if dev->disk->partition == NULL.
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47731
47732
2007-05-07  Robert Millan  <rmh@aybabtu.com>
47733
47734
	* util/i386/pc/grub-probe.c: Add `grub-probe -t partmap' parameter to
47735
	determine partition map module.
47736
	* util/i386/pc/grub-install.in: Use this feature to decide which
47737
	partition module to load, instead of hardcoding pc and gpt.
47738
47739
2007-05-07  Robert Millan  <rmh@aybabtu.com>
47740
47741
	* Makefile.in: Fix assumption that $(srcdir) has a trailing slash when
47742
	source directory differs from build directory.
47743
47744
2007-05-05  Robert Millan  <rmh@aybabtu.com>
47745
47746
	* util/powerpc/ieee1275/grub-install.in: Fix syntax error in pkglibdir
47747
	initialisation.
47748
47749
2007-05-05  Robert Millan  <rmh@aybabtu.com>
47750
47751
	* util/update-grub.in: Create ${grub_prefix} if it doesn't exist.
47752
47753
2007-05-05  Robert Millan  <rmh@aybabtu.com>
47754
47755
	* util/grub.d/10_linux.in: Allow the administrator to insert Linux
47756
	command-line arguments via ${GRUB_CMDLINE_LINUX}.
47757
47758
2007-05-05  Robert Millan  <rmh@aybabtu.com>
47759
47760
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/gpt.c.
47761
	(grub_probe_SOURCES): Likewise.
47762
	* util/i386/pc/biosdisk.c (grub_util_biosdisk_get_grub_dev): Detect
47763
	GPT and initialize dos_part and bsd_part accordingly.
47764
	* util/i386/pc/grub-setup.c (setup): Ditto for install_dos_part and
47765
	install_bsd_part.
47766
	(main): Activate gpt module for use during partition identification,
47767
	and deactivate it afterwards.
47768
	* util/i386/pc/grub-install.in: Add gpt module to core.img.
47769
	* util/i386/pc/grub-probe.c (main): Activate gpt module for use during
47770
	partition identification, and deactivate it afterwards.
47771
47772
2007-05-05  Robert Millan  <rmh@aybabtu.com>
47773
47774
	* term/i386/pc/console.c (grub_console_fini): Call
47775
	grub_term_set_current() before grub_term_unregister().
47776
47777
2007-05-04  Robert Millan  <rmh@aybabtu.com>
47778
47779
	* DISTLIST: Add util/update-grub.in, util/grub.d/00_header.in,
47780
	util/grub.d/10_hurd.in, util/grub.d/10_linux.in and util/grub.d/README.
47781
	* Makefile.in: Build update-grub_SCRIPTS.  Install update-grub_SCRIPTS
47782
	and update-grub_DATA.
47783
	* conf/common.rmk: Build and install update-grub components.
47784
	* conf/common.mk: Regenerate.
47785
	* util/update-grub.in: New.  Core of update-grub.
47786
	* util/grub.d/00_header.in: New.  Generates grub.cfg header.
47787
	* util/grub.d/10_hurd.in: New.  Generates boot entries for the Hurd.
47788
	* util/grub.d/10_linux.in: New.  Generates boot entries for Linux.
47789
	* util/grub.d/README: New.  Document grub.d directory layout.
47790
47791
2007-05-01  Robert Millan  <rmh@aybabtu.com>
47792
47793
	* util/grub-emu.c: Move initialization functions
47794
	grub_util_biosdisk_init() and grub_init_all() before
47795
	grub_util_biosdisk_get_grub_dev(), which relies on them.
47796
47797
2007-04-19  Robert Millan  <rmh@aybabtu.com>
47798
47799
	* util/powerpc/ieee1275/grub-install.in: Initialize ${bindir}, since
47800
	it is used later.
47801
47802
2007-04-18  Jerone Young  <jerone@gmail.com>
47803
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47804
	* kernel/elf.c: Add missing parenthesis for conditional statement
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47805
	stanza.
47806
47807
2007-04-10  Jerone Young  <jerone@gmail.com>
47808
47809
	* util/i386/pc/getroot.c: Update so that if root device is /dev/root ,
47810
	continue on and look for device node with real device name.
47811
47812
2007-04-10  Jerone Young  <jerone@gmail.com>
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47813
47814
	* configure.ac: Add argument for autoconf to use transformation
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47815
	ability.
47816
	* Makefile.in: Add autoconf package transformation code.
47817
	* util/i386/pc/grub-install.in: Likewise.
47818
	* util/powerpc/ieee1275/grub-install.in: Likewise.
47819
47820
2007-03-19  Yoshinori K. Okuji  <okuji@enbug.org>
47821
47822
	* fs/ext2.c (EXT2_GOOD_OLD_REVISION): New macro.
47823
	(EXT2_GOOD_OLD_INODE_SIZE): Likewise.
47824
	(EXT2_REVISION): Likewise.
47825
	(EXT2_INODE_SIZE): Likewise.
47826
	(struct grub_ext2_block_group): Added a missing member
47827
	"used_dirs".
47828
	(grub_ext2_read_inode): Divide by the inode size in a superblock
47829
	instead of 128 to obtain INODES_PER_BLOCK.
47830
	Use the macro EXT2_INODE_SIZE instead of directly using
47831
	SBLOCK->INODE_SIZE.
47832
47833
2007-03-18  Yoshinori K. Okuji  <okuji@enbug.org>
47834
47835
	* fs/ext2.c (grub_ext2_read_inode): Use the inode size in a
47836
	superblock instead of the structure size to compute an
47837
	offset. This fixes the problem that GRUB could not read a
47838
	filesystem when inode size is different from 128-byte.
47839
47840
2007-03-05  Marco Gerards  <marco@gnu.org>
47841
47842
	* normal/main.c (read_config_file): When "menu" is not set, create
47843
	an initial context.
47844
47845
2007-02-21  Hollis Blanchard  <hollis@penguinppc.org>
47846
47847
	* kern/powerpc/ieee1275/init.c (HEAP_SIZE): Removed.
47848
	(HEAP_LIMIT): New macro.
47849
	(grub_claim_heap): Claim memory up to `heaplimit'.
47850
47851
2007-02-21  Hollis Blanchard  <hollis@penguinppc.org>
47852
47853
	* conf/powerpc-ieee1275.rmk (kernel_elf_LDFLAGS): Link at 64KB.
47854
	* kern/powerpc/ieee1275/init.c (_end): Add declaration.
47855
	(_start): Likewise.
47856
	(grub_arch_modules_addr): Return address after `_end'.
47857
	* util/powerpc/ieee1275/grub-mkimage.c: Include grub/misc.h.
47858
	(load_modules): Use new parameter as `p_paddr' and `p_vaddr'.
47859
	(add_segments): Calculate `_end' from phdr size and location.
47860
	(ALIGN_UP): Moved to ...
47861
	* include/grub/misc.h: here.
47862
	* include/grub/powerpc/ieee1275/kernel.h (GRUB_IEEE1275_MOD_ALIGN):
47863
	New macro.
47864
	(GRUB_IEEE1275_MODULE_BASE): Removed.
47865
47866
2007-02-20  Hollis Blanchard  <hollis@penguinppc.org>
47867
47868
	* kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Correct
47869
	loop boundary.
47870
47871
2007-02-20  Hollis Blanchard  <hollis@penguinppc.org>
47872
47873
	* include/grub/elfload.h (grub_elf32_load_hook_t): Return grub_err_t.
47874
	All users updated.
47875
	(grub_elf64_load_hook_t): Likewise.
47876
	* kern/elf.c: Call `grub_error_push' before `grub_error'. Improve
47877
	debug output.
47878
47879
2007-02-20  Hollis Blanchard  <hollis@penguinppc.org>
47880
47881
	* kern/mm.c: Update copyright.
47882
	(grub_mm_debug): Correct syntax error.
47883
	(grub_mm_dump_free): New function.
47884
	(grub_debug_free): Call `grub_free'.
47885
	* include/grub/mm.h: Update copyright.
47886
	(grub_mm_dump_free): Add declaration.
47887
47888
2007-02-12  Hollis Blanchard  <hollis@penguinppc.org>
47889
47890
	* include/grub/ieee1275/ieee1275.h: Update copyright.
47891
	* kern/powerpc/ieee1275/init.c: Likewise.
47892
	* kern/powerpc/ieee1275/openfw.c: Likewise.
47893
47894
	* loader/powerpc/ieee1275/linux.c: Likewise.
47895
	* include/grub/elfload.h: Likewise.
47896
	* kern/elf.c: Likewise.
47897
	(grub_elf32_load): Pass `base' and `size' parameters.  Update all
47898
	callers.
47899
	(grub_elf64_load): Likewise.
47900
	(grub_elf32_load_segment): Move to a nested function.
47901
	(grub_elf64_load_segment): Likewise.
47902
47903
2007-02-12  Hollis Blanchard  <hollis@penguinppc.org>
47904
47905
	* include/grub/ieee1275/ieee1275.h (grub_available_iterate): New
47906
	prototype.
47907
	* kern/powerpc/ieee1275/init.c (grub_heap_start): Removed.
47908
	(grub_heap_len): Likewise.
47909
	(HEAP_SIZE): New macro.
47910
	(grub_claim_heap): New function.
47911
	(grub_machine_init): Don't claim heap directly.  Call
47912
	`grub_claim_heap'.
47913
	* kern/powerpc/ieee1275/openfw.c: Include alloca.h.
47914
	(grub_available_iterate): New function.
47915
47916
2007-02-03  Thomas Schwinge  <tschwinge@gnu.org>
47917
47918
	* aclocal.m4 (grub_CHECK_STACK_PROTECTOR): New definition.
47919
	* configure.ac: Use it for testing the HOST and TARGET compilers.
47920
47921
2006-12-13  Thomas Schwinge  <tschwinge@gnu.org>
47922
47923
	* Makefile.in (enable_grub_emu): New variable.
47924
	* configure.ac (--enable-grub-emu): New option.
47925
	Do the checks for (n)curses only if `--enable-grub-emu' is requested.
47926
	* conf/i386-efi.rmk (sbin_UTILITIES): Add `grub-emu' only if requested.
47927
	* conf/i386-pc.rmk: Likewise.
47928
	* conf/powerpc-ieee1275.rmk: Likewise.
47929
	* conf/sparc64-ieee1275.rmk (bin_UTILITIES): Likewise.
47930
47931
2006-12-12  Marco Gerards  <marco@gnu.org>
47932
47933
	* include/grub/err.h (grub_err_t): Add `GRUB_ERR_MENU'.
47934
47935
	* kern/env.c (grub_env_unset): Don't free the member `value' when
47936
	the type is GRUB_ENV_VAR_DATA, in this case it's a user defined
47937
	pointer.
47938
47939
	* normal/main.c (current_menu): Removed.
47940
	(free_menu): Unset the `menu' environment variable.
47941
	(grub_normal_menu_addentry): Make use of the environment variable
47942
	`menu', instead of using the global `current_menu'.  Allocate
47943
	memory for the sourcecode of this entry.
47944
	(read_config_file): New argument `nested', changed all callers.
47945
	Only in the case of a new context, initialize a new menu.  Set the
47946
	`menu' environment variable.
47947
	(grub_normal_execute): Don't set and unset the environment
47948
	variable `menu' here anymore.  Only free the menu when leaving the
47949
	context.
47950
47951
	* util/i386/pc/biosdisk.c (linux_find_partition): Fixed a memory
47952
	leak.
47953
47954
2006-12-11  Marco Gerards  <marco@gnu.org>
47955
47956
	* normal/menu_entry.c (run): Fix off by one bug so the last line
47957
	is executed.  Move the loader check to outside the loop.
47958
47959
2006-12-08  Hollis Blanchard  <hollis@penguinppc.org>
47960
47961
	* kern/powerpc/ieee1275/cmain.c (cmain): Mark r3 and r4 as `UNUSED'.
47962
47963
2006-11-25  Yoshinori K. Okuji  <okuji@enbug.org>
47964
47965
	* util/i386/pc/grub-mkimage.c (generate_image): Fix the offset of
47966
	the number of sectors.	Reported by Andrey Shuvikov
47967
	<mr_hyro@yahoo.com>.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47968
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47969
2006-11-11  Jeroen Dekkers  <jeroen@dekkers.cx>
47970
47971
	* kern/disk.c (grub_disk_read): When there is a read error, always
47972
	try to read only the necessary data.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47973
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47974
	* conf/i386-pc.rmk (grub_probe_SOURCES): Add disk/lvm.c and
47975
	disk/raid.c.
47976
	* include/grub/disk.h [GRUB_UTIL] (grub_raid_init): New
47977
	prototype.
47978
	[GRUB_UTIL] (grub_raid_fini): Likewise.
47979
	[GRUB_UTIL] (grub_lvm_init): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47980
	[GRUB_UTIL] (grub_lvm_fini): Likewise.
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47981
	* util/i386/pc/grub-probe.c (probe): Check whether DEVICE_NAME is
47982
	RAID device and copy DEVICE_NAME to DRIVE_NAME in that case.
47983
	(main): Call grub_raid_init(), grub_lvm_init(), grub_lvm_fini()
47984
	and grub_raid_fini().
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47985
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47986
2006-11-09  Jeroen Dekkers  <jeroen@dekkers.cx>
47987
47988
	* include/grub/types.h (__unused): Rename to UNUSED.
47989
	* kern/elf.c (grub_elf32_size): Use UNUSED instead of __unused.
47990
	(grub_elf64_size): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
47991
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
47992
2006-11-03  Hollis Blanchard  <hollis@penguinppc.org>
47993
47994
	* kern/elf.c (grub_elf_file): Call grub_file_seek. Call
47995
	grub_error_push and grub_error_pop in the error-handling path.
47996
	(grub_elf32_load_segment): Only call grub_file_read with non-zero
47997
	length.
47998
47999
2006-11-03  Hollis Blanchard  <hollis@penguinppc.org>
48000
48001
	* conf/i386-efi.rmk (grub_emu_SOURCES): Add kern/elf.c.
48002
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
48003
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
48004
	(kernel_elf_SOURCES): Likewise.
48005
	* conf/i386-efi.rmk (kernel_mod_HEADERS): Add elfload.h and cache.h.
48006
	* conf/i386-pc.rmk (kernel_mod_HEADERS): Likewise.
48007
	* conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): Likewise.
48008
	* conf/sparc64-ieee1275.rmk (kernel_elf_HEADERS): Likewise.
48009
	* conf/common.rmk (pkgdata_MODULES): Add elf.mod.
48010
	(elf_mod_SOURCES): New variable.
48011
	(elf_mod_CFLAGS): Likewise.
48012
	(elf_mod_LDFLAGS): Likewise.
48013
	* include/grub/types.h (__unused): New macro.
48014
	* include/grub/elfload.h: New file.
48015
	* kern/elf.c: Likewise.
48016
	* loader/powerpc/ieee1275/linux.c: Include elfload.h.
48017
	(ELF32_LOADMASK): New macro.
48018
	(ELF64_LOADMASK): Likewise.
48019
	(vmlinux): Removed.
48020
	(grub_linux_load32): New function.
48021
	(grub_linux_load64): Likewise.
48022
	(grub_rescue_cmd_linux): Call grub_linux_load32 or grub_linux_load64.
48023
	Use grub_elf_t instead of grub_file_t.
48024
48025
2006-11-02  Hollis Blanchard  <hollis@penguinppc.org>
48026
48027
	* kern/ieee1275/ieee1275.c (grub_ieee1275_set_color): Add
48028
	`catch_result' to struct set_color_args.
48029
48030
2006-10-28  Yoshinori K. Okuji  <okuji@enbug.org>
48031
48032
	* normal/menu.c: Include grub/script.h.
48033
	* normal/menu_entry.c: Likewise.
48034
	* include/grub/normal.h: Do not include grub/script.h.
48035
48036
2006-10-27  Hollis Blanchard  <hollis@penguinppc.org>
48037
48038
	* kern/disk.c (grub_disk_read): Correct debug printf formatting.
48039
48040
2006-10-27  Hollis Blanchard  <hollis@penguinppc.org>
48041
48042
	* kern/disk.c (grub_disk_open): Print debug messages when opening a
48043
	disk.
48044
	(grub_disk_close): Print debug messages when closing a disk.
48045
	(grub_disk_read): Print debug messages when disk read fails.
48046
	* kern/fs.c (grub_fs_probe): Print debug messages when detecting
48047
	filesystem type.
48048
	* kern/partition.c: Include misc.h.
48049
	(grub_partition_iterate): Print debug messages when detecting
48050
	partition type.
48051
48052
2006-10-27  Hollis Blanchard  <hollis@penguinppc.org>
48053
48054
	* disk/ieee1275/ofdisk.c (grub_ofdisk_read): Return error if `status'
48055
	is negative.
48056
	* kern/ieee1275/ieee1275.c (IEEE1275_IHANDLE_INVALID): Change to 0.
48057
48058
2006-10-26  Hollis Blanchard  <hollis@penguinppc.org>
48059
48060
	* kern/powerpc/ieee1275/openfw.c (grub_ieee1275_encode_devname):
48061
	Reverse GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS test.
48062
48063
2006-10-25  Jeroen Dekkers  <jeroen@dekkers.cx>
48064
48065
	* disk/lvm.c (grub_lvm_scan_device): Malloc sizeof(*lv) bytes
48066
	instead of sizeof(lv). Patch by Michael Guntsche.
48067
48068
2006-10-18  Jeroen Dekkers  <jeroen@dekkers.cx>
48069
48070
	* disk/lvm.c: Rename VGS to VG_LIST.
48071
	(grub_lvm_iterate): Change VGS->LV to VG-LV.
48072
	(grub_lvm_open): Likewise.
48073
	Thanks to Michael Guntsche for finding this bug.
48074
1.1.4 by Robert Millan
Import upstream version 1.95
48075
2006-10-15  Yoshinori K. Okuji  <okuji@enbug.org>
48076
48077
	* configure.ac (AC_INIT): Bumped to 1.95.
48078
48079
2006-10-14  Robert Millan  <rmh@aybabtu.com>
48080
48081
	* util/i386/pc/getroot.c (grub_guess_root_device): Don't compare os_dev
48082
	with "/dev/.static/dev/md".
48083
48084
2006-10-14  Yoshinori K. Okuji  <okuji@enbug.org>
48085
48086
	* util/i386/pc/grub-probe.c (probe): Print DEVICE_NAME instead of
48087
	DRIVE_NAME when grub_util_biosdisk_get_grub_dev fails. Open
48088
	DRIVE_NAME instead of DEVICE_NAME. Make sure that DEVICE_NAME and
48089
	DRIVE_NAME are always freed.
48090
48091
	* util/i386/pc/biosdisk.c (make_device_name): Add one into
48092
	DOS_PART, as a DOS partition is counted from one instead of zero
48093
	now. Reported by Robert Millan.
48094
48095
2006-10-14  Robert Millan  <rmh@aybabtu.com>
48096
48097
	* util/i386/pc/getroot.c (grub_guess_root_device): Stop using
48098
	grub_util_biosdisk_get_grub_dev to convert system device to GRUB device.
48099
	* util/grub-emu.c (main): Use grub_util_biosdisk_get_grub_dev with the
48100
	string returned by grub_guess_root_device.
48101
	* util/i386/pc/grub-setup.c: Likewise.
48102
	* util/i386/pc/grub-probefs.c: Likewise.
48103
48104
	* util/i386/pc/grub-probefs.c: Rename to ...
48105
	* util/i386/pc/grub-probe.c: ... this.
48106
	* DISTLIST: Remove grub-probefs, add grub-probe.
48107
	* conf/i386-efi.rmk: Likewise.
48108
	* conf/i386-pc.rmk: Likewise.
48109
	* util/i386/pc/grub-install.in: Likewise.
48110
48111
	* util/i386/pc/grub-probe.c: Add --target=(fs|device|drive) option to
48112
	choose which information we want to print.
48113
48114
2006-10-14  Yoshinori K. Okuji  <okuji@enbug.org>
48115
48116
	* DISTLIST: Added commands/echo.c, disk/lvm.c, disk/raid.c,
48117
	include/grub/bitmap.h, include/grub/lvm.h, include/grub/raid.h,
48118
	include/grub/i386/pc/vbeutil.h, include/grub/util/lvm.h,
48119
	include/grub/util/raid.h, util/lvm.c, util/raid.c, video/bitmap.c,
48120
	video/readers/tga.c and video/i386/pc/vbeutil.c.
48121
48122
2006-10-14  Jeroen Dekkers  <jeroen@dekkers.cx>
48123
48124
	Added support for RAID and LVM.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48125
1.1.4 by Robert Millan
Import upstream version 1.95
48126
	* disk/lvm.c: New file.
48127
	* disk/raid.c: Likewise.
48128
	* include/grub/lvm.h: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48129
	* include/grub/raid.h: Likewise.
1.1.4 by Robert Millan
Import upstream version 1.95
48130
	* include/grub/util/lvm.h: Likewise.
48131
	* include/grub/util/raid.h: Likewise.
48132
	* util/lvm.c: Likewise.
48133
	* util/raid.c: Likewise.
48134
48135
	* include/grub/disk.h (grub_disk_dev_id): Add
48136
	GRUB_DISK_DEVICE_RAID_ID and GRUB_DISK_DEVICE_LVM_ID.
48137
	(grub_disk_get_size): New prototype.
48138
	* kern/disk.c (grub_disk_open): Check whether grub_partition_probe()
48139
	returns a partition.
48140
	(grub_disk_get_size): New function.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48141
1.1.4 by Robert Millan
Import upstream version 1.95
48142
	* kern/i386/pc/init.c (make_install_device): Copy the prefix
48143
	verbatim if grub_install_dos_part is -2.
48144
48145
	* util/i386/pc/getroot.c (grub_guess_root_device): Support RAID
48146
	and LVM devices.
48147
48148
	* util/i386/pc/grub-setup.c (setup): New argument
48149
	MUST_EMBED. Force embedding of GRUB when the argument is
48150
	true. Close FILE before	returning.
48151
	(main): Add support for RAID and LVM.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48152
1.1.4 by Robert Millan
Import upstream version 1.95
48153
	* conf/common.rmk: Add RAID and LVM modules.
48154
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add util/raid.c and
48155
	util/lvm.c.
48156
	(grub_emu_SOURCES): Add disk/raid.c and disk/lvm.c.
48157
48158
	* kern/misc.c (grub_strstr): New function.
48159
	* include/grub/misc.h (grub_strstr): New prototype.
48160
48161
2006-10-10  Tristan Gingold  <tristan.gingold@bull.net>
48162
48163
	* include/grub/efi/api.h (GRUB_EFI_ERROR_CODE): Long constant.
48164
48165
2006-10-05  Tristan Gingold  <tristan.gingold@bull.net>
48166
48167
	* kern/misc.c (grub_strtoull): Guess the base only if not
48168
	specified.
48169
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
48170
2006-10-01  Hollis Blanchard  <hollis@penguinppc.org>
1.1.4 by Robert Millan
Import upstream version 1.95
48171
48172
	* kern/powerpc/ieee1275/cmain.c (cmain): Remove incomplete Old World
48173
	PowerMac support.
48174
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
48175
2006-10-01  Hollis Blanchard  <hollis@penguinppc.org>
1.1.4 by Robert Millan
Import upstream version 1.95
48176
48177
	* disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Cast `size' to long.
48178
48179
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_next_property):
48180
	Remove `flags' argument.  All callers changed.
48181
	* kern/ieee1275/ieee1275.c (IEEE1275_PHANDLE_ROOT): Removed.
48182
	(IEEE1275_IHANDLE_INVALID): New variable.
48183
	(IEEE1275_CELL_INVALID): New variable.
48184
	(grub_ieee1275_finddevice, grub_ieee1275_get_property,
48185
	grub_ieee1275_get_property_length, grub_ieee1275_instance_to_package,
48186
	grub_ieee1275_package_to_path, grub_ieee1275_instance_to_path,
48187
	grub_ieee1275_peer, grub_ieee1275_child, grub_ieee1275_open,
48188
	grub_ieee1275_claim, grub_ieee1275_set_property): Error-check return
48189
	codes from Open Firmware.  All callers updated.
48190
	(grub_ieee1275_next_property): Directly return Open Firmware return
48191
	code.
48192
	* kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options):
48193
	Standardize error checking from `grub_ieee1275_get_property'.
48194
	* kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Rename
48195
	`devalias' to `aliases'.  Correct comments.  Consolidate error paths.
48196
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
48197
2006-10-01  Hollis Blanchard  <hollis@penguinppc.org>
1.1.4 by Robert Millan
Import upstream version 1.95
48198
48199
	* kern/ieee1275/ieee1275.c (grub_ieee1275_instance_to_path): Rename
48200
	`instance_to_package_args' to `instance_to_path_args'.
48201
48202
	* kern/powerpc/ieee1275/init.c (grub_machine_init): Use
48203
	`grub_ieee1275_chosen'.
48204
48205
	* term/ieee1275/ofconsole.c (grub_ofconsole_init): Call
48206
	`grub_ieee1275_interpret'.
48207
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
48208
2006-09-25  Hollis Blanchard  <hollis@penguinppc.org>
1.1.4 by Robert Millan
Import upstream version 1.95
48209
48210
	* util/powerpc/ieee1275/grub-mkimage.c: Include config.h.
48211
1.1.5 by Albin Tonnerre
Import upstream version 1.95+20070520
48212
2006-09-25  Hollis Blanchard  <hollis@penguinppc.org>
1.1.4 by Robert Millan
Import upstream version 1.95
48213
48214
	* include/grub/powerpc/libgcc.h (__floatdisf): New prototype.
48215
	(__cmpdi): Likewise.
48216
48217
	* kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Pass 0 as
48218
	`flags' to `grub_ieee1275_next_property'.  Change `pathlen' to type
48219
	`grub_ssize_t'.
48220
48221
	* kern/powerpc/ieee1275/cmain.c: Include grub/misc.h.
48222
48223
	* loader/powerpc/ieee1275/linux.c (grub_linux_boot): Change `actual'
48224
	to type `grub_ssize_t'.
48225
	(grub_rescue_cmd_linux): Cast -1 to `grub_off_t'.
48226
48227
2006-09-22  Marco Gerards  <marco@gnu.org>
48228
48229
	* normal/script.c (grub_script_create_cmdmenu): Skip leading
48230
	newlines.
48231
48232
2006-09-22  Marco Gerards  <marco@gnu.org>
48233
48234
	* commands/echo.c: New file.
48235
48236
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/echo.c'.
48237
48238
	* conf/common.rmk (echo_mod_SOURCES): New variable.
48239
	(echo_mod_CFLAGS): Likewise.
48240
	(echo_mod_LDFLAGS): Likewise.
48241
48242
2006-09-22  Marco Gerards  <marco@gnu.org>
48243
48244
	* normal/main.c (get_line): Malloc memory instead of using
48245
	preallocated memory.  Removed the arguments `cmdline' and
48246
	`max_len'.  Updated all callers.
48247
48248
2006-09-22  Marco Gerards  <marco@gnu.org>
48249
48250
	* conf/i386-efi.rmk (grub_emu_DEPENDENCIES): New variable.
48251
	(normal_mod_DEPENDENCIES): Likewise.
48252
48253
	* conf/powerpc-ieee1275.rmk (grub_emu_DEPENDENCIES): Likewise.
48254
	(normal_mod_DEPENDENCIES): Likewise.
48255
48256
	* conf/sparc64-ieee1275.rmk (normal_mod_DEPENDENCIES): Likewise.
48257
48258
2006-09-22  Johan Rydberg  <jrydberg@gnu.org>
48259
48260
	* genmk.rb: Add DEPENDENCIES variables to modules, utilities, and
48261
	programs.
48262
	* conf/i386-pc.rmk (grub_emu_DEPENDENCIES): Declare.
48263
	(normal_mod_DEPENDENCIES): Likewise.
48264
	* conf/i386-pc.mk: Regenerate.
48265
	* conf/i386-efi.mk: Likewise
48266
	* conf/common.mk: Likewise.
48267
	* conf/powerpc-ieee1275.mk: Likewise.
48268
	* conf/sparc64-ieee1275.mk: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48269
1.1.4 by Robert Millan
Import upstream version 1.95
48270
2006-09-22  Robert Millan  <rmh@aybabtu.com>
48271
48272
	Sync with i386 version.
48273
	* conf/powerpc-ieee1275.rmk (bin_UTILITIES): Remove grub-emu, add grub-mkimage.
48274
	* conf/powerpc-ieee1275.rmk (sbin_UTILITIES): Remove grub-mkimage, add grub-emu.
48275
48276
2006-09-21  Robert Millan  <rmh@aybabtu.com>
48277
48278
	Import from GRUB Legacy (lib/device.c):
48279
	* util/i386/pc/grub-mkdevicemap.c (get_i2o_disk_name): New function.
48280
	(init_device_map) [__linux__]: Add support for I2O devices.
48281
48282
2006-09-14  Marco Gerards  <marco@gnu.org>
48283
48284
	* conf/i386-pc.rmk (COMMON_LDFLAGS): Use `-m32' instead of
48285
	`-melf_i386'.
48286
48287
2006-09-14  Robert Millan  <rmh@aybabtu.com>
48288
48289
	* util/i386/pc/grub-install.in: Skip menu.lst when removing
48290
	/boot/grub/*.lst.
48291
48292
	* util/i386/pc/getroot.c: Don't recurse into dotdirs (e.g. ".static").
48293
48294
	* util/i386/pc/grub-mkdevicemap.c: Make sure the floppy device exists
48295
	before adding it to device.map.
48296
48297
2006-08-15  Johan Rydberg  <jrydberg@gnu.org>
48298
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48299
	* genmk.rb: Let GCC generate dependencies the first time it
1.1.4 by Robert Millan
Import upstream version 1.95
48300
	compiles a file; using the -MD option.
48301
	* conf/common.mk: Regenerate.
48302
	* conf/i386-pc.mk: Likewise.
48303
	* conf/i386-efi.mk: Likewise.
48304
	* conf/powerpc-ieee1275.mk: Likewise.
48305
	* conf/sparc64-ieee1275.mk: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48306
1.1.4 by Robert Millan
Import upstream version 1.95
48307
2006-08-04  Yoshinori K. Okuji  <okuji@enbug.org>
48308
48309
	Move the prototypes of grub_setjmp and grub_longjmp to
48310
	cpu/setjmp.h, so that each architecture may specify different
48311
	attributes.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48312
1.1.4 by Robert Millan
Import upstream version 1.95
48313
	* include/grub/i386/setjmp.h (grub_setjmp): New prototype.
48314
	(grub_longjmp): Likewise.
48315
	* include/grub/powerpc/setjmp.h (grub_setjmp): Likewise..
48316
	(grub_longjmp): Likewise.
48317
	* include/grub/sparc64/setjmp.h (grub_setjmp): Likewise..
48318
	(grub_longjmp): Likewise.
48319
48320
	* include/grub/setjmp.h [!GRUB_UTIL] (grub_setjmp): Removed.
48321
	[!GRUB_UTIL] (grub_longjmp): Removed.
48322
48323
2006-08-01  Pelletier Vincent  <subdino2004@yahoo.fr>
48324
48325
	* kern/ieee1275/ieee1275.c (grub_ieee1275_set_color): IEEE1275
48326
	"color!" method does not return any value.
48327
48328
2006-07-29  Vesa Jaaskelainen  <chaac@nic.fi>
48329
48330
	* include/grub/bitmap.h: New file.
48331
48332
	* include/grub/i386/pc/vbeutil.h: Likewise.
48333
48334
	* video/bitmap.c: Likewise.
48335
48336
	* video/readers/tga.c: Likewise.
48337
48338
	* video/i386/pc/vbeutil.c: Likewise.
48339
48340
	* commands/videotest.c: Code cleanup and updated to reflect to new
48341
	video API.
48342
48343
	* term/gfxterm.c: Likewise.
48344
48345
	* video/video.c: Likewise.
48346
48347
	* conf/i386-pc.rmk (pkgdata_MODULES): Added tga.mod and bitmap.mod.
48348
	(vbe_mod_SOURCES): Added video/i386/pc/vbeutil.c.
48349
	(bitmap_mod_SOURCES): New entry.
48350
	(bitmap_mod_CFLAGS): Likewise.
48351
	(bitmap_mod_LDFLAGS): Likewise.
48352
	(tga_mod_SOURCES): Likewise.
48353
	(tga_mod_CFLAGS): Likewise.
48354
	(tga_mod_LDFLAGS): Likewise.
48355
48356
	* include/grub/video.h (grub_video_blit_operators): New enum type.
48357
	(grub_video_render_target): Changed as forward declaration and moved
48358
	actual definition to be video driver specific.
48359
	(grub_video_adapter.blit_bitmap): Added blitting operator.
48360
	(grub_video_adapter.blit_render_target): Likewise.
48361
	(grub_video_blit_bitmap): Likewise.
48362
	(grub_video_blit_render_target): Likewise.
48363
48364
	* include/grub/i386/pc/vbe.h (grub_video_render_target): Added
48365
	driver specific render target definition.
48366
	(grub_video_vbe_map_rgba): Added driver internal helper.
48367
	(grub_video_vbe_unmap_color): Updated to use
48368
	grub_video_i386_vbeblit_info.
48369
	(grub_video_vbe_get_video_ptr): Likewise.
48370
48371
	* include/grub/i386/pc/vbeblit.h
48372
	(grub_video_i386_vbeblit_R8G8B8A8_R8G8B8A8): Updated to use
48373
	grub_video_i386_vbeblit_info.
48374
	(grub_video_i386_vbeblit_R8G8B8_R8G8B8A8): Likewise.
48375
	(grub_video_i386_vbeblit_index_R8G8B8A8): Likewise.
48376
	(grub_video_i386_vbeblit_R8G8B8A8_R8G8B8): Likewise.
48377
	(grub_video_i386_vbeblit_R8G8B8_R8G8B8): Likewise.
48378
	(grub_video_i386_vbeblit_index_R8G8B8): Likewise.
48379
	(grub_video_i386_vbeblit_index_index): Likewise.
48380
	(grub_video_i386_vbeblit_R8G8B8X8_R8G8B8X8): New blitter function.
48381
	(grub_video_i386_vbeblit_R8G8B8_R8G8B8X8): Likewise.
48382
	(grub_video_i386_vbeblit_index_R8G8B8X8): Likewise.
48383
	(grub_video_i386_vbeblit_blend): Added generic blitter for blend
48384
	operator.
48385
	(grub_video_i386_vbeblit_replace): Added generic blitter for replace
48386
	operator.
48387
48388
	* video/i386/pc/vbeblit.c: Updated to reflect changes on
48389
	include/grub/i386/pc/vbeblit.h.
48390
48391
	* include/grub/i386/pc/vbefill.h (grub_video_i386_vbefill_R8G8B8A8):
48392
	Updated to use grub_video_i386_vbeblit_info.
48393
	(grub_video_i386_vbefill_R8G8B8): Likewise.
48394
	(grub_video_i386_vbefill_index): Likewise.
48395
	(grub_video_i386_vbefill): Added generic filler.
48396
48397
	* video/i386/pc/vbefill.c: Updated to reflect changes on
48398
	include/grub/i386/pc/vbefill.h.
48399
48400
	* video/i386/pc/vbe.c (grub_video_vbe_get_video_ptr): Updated to use
48401
	grub_video_i386_vbeblit_info.
48402
	(grub_video_vbe_unmap_color): Likewise.
48403
	(grub_video_vbe_blit_glyph): Likewise.
48404
	(grub_video_vbe_scroll): Likewise.
48405
	(grub_video_vbe_draw_pixel): Removed function.
48406
	(grub_video_vbe_get_pixel): Likewise.
48407
	(grub_video_vbe_fill_rect): Moved all blitters to vbefill.c and
48408
	updated code to use it.
48409
	(common_blitter): Added common blitter for render target and bitmap.
48410
	(grub_video_vbe_blit_bitmap): Updated to use common_blitter.
48411
	(grub_video_vbe_blit_render_target): Likewise.
48412
48413
2006-07-30  Johan Rydberg  <jrydberg@gnu.org>
48414
48415
	* kern/efi/efi.c (grub_efi_set_text_mode): Assume console already
48416
	is in text mode if there is no console control protocol instance
48417
	available.
48418
48419
2006-07-29  Vesa Jaaskelainen  <chaac@nic.fi>
48420
48421
	* include/grub/video.h: Code cleanup.
48422
48423
	* include/grub/i386/pc/vbe.h: Likewise.
48424
48425
	* video/i386/pc/vbe.c: Likewise.
48426
48427
	* video/i386/pc/vbeblit.c: Likewise.
48428
48429
	* video/i386/pc/vbefill.c: Likewise.
48430
48431
	* video/video.c: Likewise.  Also added more comments.
48432
48433
2006-07-29  Vesa Jaaskelainen  <chaac@nic.fi>
48434
48435
	* disk/i386/pc/biosdisk.c (struct grub_biosdisk_drp): Moved to ...
48436
	(struct grub_biosdisk_dap): Likewise.
48437
48438
	* include/grub/i386/pc/biosdisk.h: ... to here.  Also corrected
48439
	linkage settings for all functions.
48440
48441
2006-07-12  Marco Gerards  <marco@gnu.org>
48442
48443
	* configure.ac (--enable-mm-debug): Fix typo.
48444
48445
	* genkernsyms.sh.in: Use proper quoting for `CC'.
48446
48447
2006-07-02  Jeroen Dekkers  <jeroen@dekkers.cx>
48448
48449
	* conf/i386-pc.rmk (COMMON_ASFLAGS): Add "-m32".
48450
	(normal_mod_ASFLAGS): Remove "-m32".
48451
48452
2006-06-14  Yoshinori K. Okuji  <okuji@enbug.org>
48453
48454
	* util/misc.c: Include config.h.
48455
	[!HAVE_MEMALIGN]: Do not include malloc.h.
48456
	(grub_memalign): Use posix_memalign, if present. Then, use
48457
	memalign, if present. Otherwise, emit an error.
48458
48459
	* util/grub-emu.c: Do not include malloc.h.
48460
48461
	* include/grub/util/misc.h: Include unistd.h. This is required for
48462
	FreeBSD, because off_t is defined in unistd.h. Reported by Harley
48463
	D. Eades III <hde@foobar-qux.org>.
48464
48465
	* configure.ac (AC_GNU_SOURCE): Added.
48466
	(AC_CHECK_FUNCS): Check posix_memalign and memalign for the host
48467
	type.
48468
48469
2006-06-09  Yoshinori K. Okuji  <okuji@enbug.org>
48470
48471
	* loader/i386/pc/linux.c (grub_rescue_cmd_initrd): Make sure that
48472
	ADDR_MAX does not exceed GRUB_LINUX_INITRD_MAX_ADDRESS.
48473
48474
2006-06-07  Jeroen Dekkers  <jeroen@dekkers.cx>
48475
48476
	* include/grub/types.h (grub_host_addr_t): Rename to
48477
	grub_target_addr_t.
48478
	(grub_host_off_t): Rename to grub_target_off_t.
48479
	(grub_host_size_t): Rename to grub_target_size_t.
48480
	(grub_host_ssize_t): Rename to grub_target_ssize_t.
48481
	Refer to GRUB_TARGET_SIZEOF_VOID_P to define those variables.
48482
48483
	* include/grub/kernel.h (struct grub_module_header): Change type
48484
	of OFFSET to grub_target_off_t and type of SIZE to grub_target_size_t.
48485
	(grub_module_info): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48486
1.1.4 by Robert Millan
Import upstream version 1.95
48487
2006-06-05  Yoshinori K. Okuji  <okuji@enbug.org>
48488
48489
	* loader/i386/pc/linux.c (grub_rescue_cmd_initrd): The conditional
48490
	of checking LINUX_MEM_SIZE was reverse. Reported by Jesus
48491
	Velazquez <jesus.velazquez@gmail.com>.
48492
48493
2006-06-05  Yoshinori K. Okuji  <okuji@enbug.org>
48494
48495
	Count partitions from 1 instead of 0 in the string representation
48496
	of partitions. Still use 0-based internally.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48497
1.1.4 by Robert Millan
Import upstream version 1.95
48498
	* partmap/sun.c (grub_sun_is_valid): A cosmetic change.
48499
	(sun_partition_map_iterate): Use grub_partition_t instead of
48500
	struct grub_partition *. Cast DESC->START_CYLINDER to
48501
	grub_uint64_t after converting the endian.
48502
	(sun_partition_map_probe): Subtract 1 for PARTNUM.
48503
	(sun_partition_map_get_name): Add 1 to P->INDEX.
48504
48505
	* partmap/pc.c (grub_partition_parse): Subtract 1 for
48506
	PCDATA->DOS_PART.
48507
	(pc_partition_map_get_name): Add 1 into PCDATA->DOS_PART.
48508
48509
	* partmap/gpt.c (gpt_partition_map_iterate): Initialize PARTNO to
48510
	zero instead of one.
48511
	(gpt_partition_map_probe): Subtract 1 for PARTNUM.
48512
	(gpt_partition_map_get_name): Add 1 into P->INDEX.
48513
48514
	* partmap/apple.c (apple_partition_map_iterate): Change the type
48515
	of POS to unsigned.
48516
	(apple_partition_map_probe): Subtract 1 for PARTNUM.
48517
	(apple_partition_map_get_name): Add 1 into P->INDEX.
48518
48519
	* partmap/amiga.c (amiga_partition_map_iterate): Change the type
48520
	of POS to unsigned.
48521
	(amiga_partition_map_iterate): Cast NEXT to grub_off_t to
48522
	calculate the offset of a partition.
48523
	(amiga_partition_map_probe): Subtract 1 for PARTNUM.
48524
	(amiga_partition_map_get_name): Add 1 into P->INDEX.
48525
48526
	* partmap/acorn.c (acorn_partition_map_find): Change the type of
48527
	SECTOR to grub_disk_addr_t.
48528
	(acorn_partition_map_iterate): Likewise.
48529
	(acorn_partition_map_probe): Subtract 1 for PARTNUM.
48530
	Change the type of SECTOR to grub_disk_addr_t. Declare P on the
48531
	top.
48532
	(acorn_partition_map_get_name): Add 1 into P->INDEX.
48533
48534
	* kern/i386/pc/init.c (make_install_device): Add 1 into
48535
	GRUB_INSTALL_DOS_PART.
48536
48537
	* fs/iso9660.c (grub_iso9660_mount): Fixed a reversed
48538
	conditional.
48539
48540
2006-06-04  Yoshinori K. Okuji  <okuji@enbug.org>
48541
48542
	Clean up the code to support 64-bit addressing in disks and
48543
	files. This change is not enough for filesystems yet.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48544
1.1.4 by Robert Millan
Import upstream version 1.95
48545
	* util/i386/pc/grub-setup.c (struct boot_blocklist): Change the
48546
	type of "start" to grub_uint64_t.
48547
	(setup): Change the types of KERNEL_SECTOR and FIRST_SECTOR to
48548
	grub_disk_addr_t * and grub_disk_addr_t. Fix the format string in
48549
	save_first_sector and save_blocklists. Use grub_le_to_cpu64 to
48550
	convert addresses.
48551
48552
	* util/i386/pc/biosdisk.c (open_device): Change the type of SECTOR
48553
	to grub_disk_addr_t.
48554
48555
	* partmap/gpt.c (gpt_partition_map_iterate): Fix the format
48556
	string.
48557
48558
	* partmap/pc.c (pc_partition_map_iterate): Likewise.
48559
48560
	* partmap/amiga.c (amiga_partition_map_iterate): Cast RDSK.MAGIC
48561
	to char *.
48562
48563
	* normal/script.c (grub_script_parse): Remove unused MEMFREE.
48564
48565
	* normal/parser.y (YYLTYPE_IS_TRIVIAL): New macro.
48566
48567
	* normal/lexer.c (grub_script_yyerror): Specify unused to LEX.
48568
48569
	* loader/i386/pc/multiboot.c (grub_multiboot_load_elf64): Cast -1
48570
	to grub_off_t, to detect an error from grub_file_seek.
48571
	(grub_multiboot_load_elf32): Likewise.
48572
48573
	* kern/misc.c (grub_strtoul): Use grub_strtoull. Return the
48574
	maximum unsigned long value when an overflow is detected.
48575
	(grub_strtoull): New function.
48576
	(grub_divmod64): Likewise.
48577
	(grub_lltoa): use grub_divmod64.
48578
48579
	* kern/fs.c (struct grub_fs_block): Change the type of "offset" to
48580
	grub_disk_addr_t.
48581
	(grub_fs_blocklist_open): Increase P if P is not NULL to advance
48582
	the pointer to next character. Use grub_strtoull instead of
48583
	grub_strtoul.
48584
	(grub_fs_blocklist_read): Change the types of SECTOR, OFFSET and
48585
	SIZE to grub_disk_addr_t, grub_off_t and grub_size_t,
48586
	respectively.
48587
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48588
	* kern/file.c (grub_file_read): Prevent an overflow of LEN, as the
1.1.4 by Robert Millan
Import upstream version 1.95
48589
	return value is signed.
48590
	(grub_file_seek): Change the type of OLD to grub_off_t. Do not
48591
	test if OFFSET is less than zero, as OFFSET is unsigned now.
48592
48593
	* kern/disk.c (struct grub_disk_cache): Change the type of
48594
	"sector" to grub_disk_addr_t.
48595
	(grub_disk_cache_get_index): Change the type of SECTOR to
48596
	grub_disk_addr_t. Calculate the hash with SECTOR casted to
48597
	unsigned after shifting.
48598
	(grub_disk_cache_invalidate): Change the type of SECTOR to
48599
	grub_disk_addr_t.
48600
	(grub_disk_cache_unlock): Likewise.
48601
	(grub_disk_cache_store): Likewise.
48602
	(grub_disk_check_range): Change the types of SECTOR, OFFSET, SIZE,
48603
	START and LEN to grub_disk_addr_t *, grub_off_t *, grub_size_t,
48604
	grub_disk_addr_t and grub_uint64_t, respectively.
48605
	(grub_disk_read): Use an unsigned variable REAL_OFFSET for the
48606
	body, as the value of OFFSET is tweaked by
48607
	grub_disk_check_range. Change the types of START_SECTOR, LEN and
48608
	POS to grub_disk_addr_t, grub_size_t and grub_size_t,
48609
	respectively.
48610
	(grub_disk_write): Use an unsigned variable REAL_OFFSET for the
48611
	body, as the value of OFFSET is tweaked by
48612
	grub_disk_check_range. Change the types of LEN and N to
48613
	grub_size_t.
48614
48615
	* io/gzio.c (struct grub_gzio): Change the types of "data_offset"
48616
	and "saved_offset" to grub_off_t.
48617
	(test_header): Cast BUF to char *.
48618
	(get_byte): Cast GZIO->DATA_OFFSET to grub_off_t. Cast GZIO->INBUF
48619
	to char *.
48620
	(grub_gzio_read): Change the types of OFFSET and SIZE to
48621
	grub_off_t and grub_size_t, respectively.
48622
48623
	* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_FORCE_LBA):
48624
	Removed.
48625
	(GRUB_BOOT_MACHINE_BOOT_DRIVE):	Changed to 0x4c.
48626
	(GRUB_BOOT_MACHINE_KERNEL_ADDRESS): Changed to 0x40.
48627
	(GRUB_BOOT_MACHINE_KERNEL_SEGMENT): Changed to 0x42.
48628
	(GRUB_BOOT_MACHINE_DRIVE_CHECK): Changed to 0x4e.
48629
	(GRUB_BOOT_MACHINE_LIST_SIZE): Increased to 12.
48630
48631
	* include/grub/types.h (grub_off_t): Unconditionally set to
48632
	grub_uint64_t.
48633
	(grub_disk_addr_t): Changed to grub_uint64_t.
48634
48635
	* include/grub/partition.h (struct grub_partition): Change the
48636
	types of "start", "len" and "offset" to grub_disk_addr_t,
48637
	grub_uint64_t and grub_disk_addr_t, respectively.
48638
	(grub_partition_get_start): Return grub_disk_addr_t.
48639
	(grub_partition_get_len): Return grub_uint64_t.
48640
48641
	* include/grub/misc.h (grub_strtoull): New prototype.
48642
	(grub_divmod64): Likewise.
48643
48644
	* include/grub/fshelp.h (grub_fshelp_read_file): Change the types
48645
	of SECTOR, LEN and FILESIZE to grub_disk_addr_t, grub_size_t and
48646
	grub_off_t, respectively.
48647
	All callers and references changed.
48648
48649
	* include/grub/fs.h (struct grub_fs): Change the type of LEN to
48650
	grub_size_t in "read".
48651
	All callers and references changed.
48652
48653
	* include/grub/file.h (struct grub_file): Change the types of
48654
	"offset" and "size" to grub_off_t and grub_off_t,
48655
	respectively. Change the type of SECTOR to grub_disk_addr_t in
48656
	"read_hook".
48657
	(grub_file_read): Change the type of LEN to grub_size_t.
48658
	(grub_file_seek): Return grub_off_t. Change the type of OFFSET to
48659
	grub_off_t.
48660
	(grub_file_size): Return grub_off_t.
48661
	(grub_file_tell): Likewise.
48662
	All callers and references changed.
48663
48664
	* include/grub/disk.h (struct grub_disk_dev): Change the types of
48665
	SECTOR and SIZE to grub_disk_addr_t and grub_size_t in "read" and
48666
	"write".
48667
	(struct grub_disk): Change the type of "total_sectors" to
48668
	grub_uint64_t. Change the type of SECTOR to grub_disk_addr_t in
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48669
	"read_hook".
1.1.4 by Robert Millan
Import upstream version 1.95
48670
	(grub_disk_read): Change the types of SECTOR, OFFSET and SIZE to
48671
	grub_disk_addr_t, grub_off_t and grub_size_t, respectively.
48672
	(grub_disk_write): Likewise.
48673
	All callers and references changed.
48674
48675
	* fs/iso9660.c (grub_iso9660_susp_iterate): Cast parameters to
48676
	char * for grub_strncmp to silence gcc.
48677
	(grub_iso9660_mount): Likewise.
48678
	(grub_iso9660_mount): Likewise.
48679
	(grub_iso9660_read_symlink): Likewise. Also, remove the nonsense
48680
	return statement.
48681
	(grub_iso9660_iterate_dir): Likewise.
48682
	(grub_iso9660_label): Cast DATA->VOLDESC.VOLNAME to char *.
48683
48684
	* fs/hfs.c (grub_hfs_read_file): Change the types of SECTOR and
48685
	LEN to grub_disk_addr_t and grub_size_t, respectively.
48686
48687
	* fs/hfsplus.c (grub_hfsplus_read_file): Likewise.
48688
48689
	* fs/jfs.c (grub_jfs_read_file): Likewise.
48690
48691
	* fs/minix.c (grub_jfs_read_file): Likewise.
48692
48693
	* fs/sfs.c (grub_jfs_read_file): Likewise.
48694
48695
	* fs/ufs.c (grub_jfs_read_file): Likewise.
48696
48697
	* fs/xfs.c (grub_jfs_read_file): Likewise.
48698
48699
	* fs/fat.c (grub_fat_read_data): Change the types of SECTOR, LEN
48700
	and SIZE to grub_disk_addr_t, grub_size_t and grub_size_t,
48701
	respectively.
48702
48703
	* fs/ext2.c (grub_ext2_read_block): When an error happens, set
48704
	BLKNR to -1 instead of returning GRUB_ERRNO.
48705
	(grub_ext2_read_file): Change the types of SECTOR and
48706
	LEN to grub_disk_addr_t and grub_size_t, respectively.
48707
48708
	* fs/affs.c (grub_affs_read_file): Change the types of SECTOR and
48709
	LEN to grub_disk_addr_t and grub_size_t, respectively.
48710
48711
	* font/manager.c (grub_font_get_glyph): Cast BITMAP to char * for
48712
	grub_file_read.
48713
48714
	* disk/ieee1275/ofdisk.c (grub_ofdisk_read): Fix the format
48715
	string. Do not cast SECTOR explicitly.
48716
48717
	* disk/i386/pc/biosdisk.c (grub_biosdisk_open): Change the type of
48718
	TOTAL_SECTORS to grub_uint64_t. Do not mask DRP->TOTAL_SECTORS.
48719
	(grub_biosdisk_rw): Change the types of SECTOR and SIZE to
48720
	grub_disk_addr_t and grub_size_t, respectively. If the sector is
48721
	over 2TB and LBA mode is not supported, raise an error.
48722
	(get_safe_sectors): New function.
48723
	(grub_biosdisk_read): Use get_safe_sectors.
48724
	(grub_biosdisk_write): Likewise.
48725
48726
	* disk/efi/efidisk.c (grub_efidisk_read): Fix the format string.
48727
	(grub_efidisk_write): Likewise.
48728
48729
	* disk/loopback.c (delete_loopback): Cosmetic changes.
48730
	(grub_cmd_loopback): Likewise. Also, test NEWDEV->FILENAME
48731
	correctly.
48732
	(grub_loopback_open): Likewise.
48733
	(grub_loopback_read): Likewise. Also, change the type of POS to
48734
	grub_off_t, and fix the usage of grub_memset.
48735
48736
	* commands/i386/pc/play.c: Include grub/machine/time.h.
48737
48738
	* commands/ls.c (grub_ls_list_files): Use "llu" instead of "d" to
48739
	print FILE->SIZE.
48740
48741
	* commands/configfile.c: Include grub/env.h.
48742
48743
	* commands/cmp.c (grub_cmd_cmp): Do not use ERR, but use
48744
	GRUB_ERRNO directly instead. Change the type of POS to
48745
	grub_off_t. Follow the coding standard.
48746
48747
	* commands/blocklist.c: Include grub/partition.h.
48748
	(grub_cmd_blocklist): Return an error if the underlying device is
48749
	not a disk. Take the starting sector of a partition into account,
48750
	if a partition is used.
48751
48752
	* boot/i386/pc/diskboot.S (bootloop): Adapted to the new offset of
48753
	a length field.
48754
	(lba_mode): Support 64-bit addresses.
48755
	(chs_mode): Likewise.
48756
	(copy_buffer): Adapted to the new offsets of a length field and a
48757
	segment field.
48758
	(blocklist_default_start): Allocate 64-bit space.
48759
48760
	* boot/i386/pc/boot.S (force_lba): Removed.
48761
	(boot_drive): Moved to under KERNEL_SECTOR.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48762
	(kernel_sector): Moved to under KERNEL_SEGMENT. Allocate 64-bit
1.1.4 by Robert Millan
Import upstream version 1.95
48763
	space.
48764
	(real_start): Set %si earlier. Remove code for FORCE_LBA, since it
48765
	is useless.
48766
	(lba_mode): Refactored to support a 64-bit address. More size
48767
	optimization.
48768
	(setup_sectors): Likewise.
48769
1.1.3 by Otavio Salvador
Import upstream version 1.94
48770
2006-06-04  Yoshinori K. Okuji  <okuji@enbug.org>
48771
48772
	* DISTLIST: Added include/grub/i386/linux.h. Removed
48773
	include/grub/i386/pc/linux.h
48774
48775
	* configure.ac (AC_INIT): Bumped to 1.94.
48776
48777
	* config.guess: Updated from gnulib.
48778
	* config.sub: Likewise.
48779
	* install-sh: Likewise.
48780
	* mkinstalldirs: Likewise.
48781
48782
2006-06-02  Yoshinori K. Okuji  <okuji@enbug.org>
48783
48784
	* conf/common.rmk (grub_modules_init.lst): Depended on
48785
	grub_emu_SOURCES, excluding grub_emu_init.c, instead of
48786
	MODSRCFILES.
48787
48788
	* genmk.rb (PModule::rule): Reverted the previous change.
48789
48790
2006-06-02  Yoshinori K. Okuji  <okuji@enbug.org>
48791
48792
	* conf/common.rmk (grub_modules_init.lst): Depends on
48793
	$(MODSRCFILES). Grep only the files in $(MODSRCFILES). Make sure
48794
	that the target does not exist before producing.
48795
	(grub_modules_init.h): Remove the target before generating.
48796
	(grub_emu_init.c): Likewise.
48797
48798
	* genmk.rb (PModule::rule): Add source files into MODSRCFILES.
48799
48800
2006-05-31  Jeroen Dekkers  <jeroen@dekkers.cx>
48801
48802
	* configure.ac: Don't set host_m32 for x86_64. Also reset LIBS
48803
	for the target-specific tests. Make sure that we also have the
48804
	up-to-date target variables for those tests.
48805
48806
2006-05-31  Yoshinori K. Okuji  <okuji@enbug.org>
48807
48808
	* genmk.rb (Image::rule): Prefix CFLAGS or ASFLAGS with TARGET_.
48809
	(PModule::rule): Likewise.
48810
48811
2006-05-31  Yoshinori K. Okuji  <okuji@enbug.org>
48812
48813
	* genmk.rb (Image::rule): Set FLAG to CFLAGS or ASFLAGS instead of
48814
	TARGET_CFLAGS or TARGET_ASFLAGS. There is no reason why
48815
	target-specific flags should be prefixed.
48816
	(PModule::rule): Likewise.
48817
48818
2006-05-30  Yoshinori K. Okuji  <okuji@enbug.org>
48819
48820
	* configure.ac (CMP): Check if cmp is available explicitly.
48821
48822
2006-05-29  Yoshinori K. Okuji  <okuji@enbug.org>
48823
48824
	* util/powerpc/ieee1275/grub-install.in (host_cpu): Removed.
48825
	(target_cpu): New variable.
48826
	(pkglibdir): Use target_cpu instead of host_cpu.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48827
1.1.3 by Otavio Salvador
Import upstream version 1.94
48828
	* util/i386/pc/grub-install.in (host_cpu): Removed.
48829
	(target_cpu): New variable.
48830
	(pkglibdir): Use target_cpu instead of host_cpu.
48831
48832
	* util/genmoddep.c: Removed.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48833
1.1.3 by Otavio Salvador
Import upstream version 1.94
48834
	* kern/efi/mm.c (filter_memory_map): Use GRUB_CPU_SIZEOF_VOID_P
48835
	instead of GRUB_HOST_SIZEOF_VOID_P.
48836
	* kern/dl.c: Likewise.
48837
48838
	* include/grub/i386/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed to
48839
	...
48840
	(GRUB_TARGET_SIZEOF_VOID_P): ... this.
48841
	(GRUB_HOST_SIZEOF_LONG): Renamed to ...
48842
	(GRUB_TARGET_SIZEOF_LONG): ... this.
48843
	(GRUB_HOST_WORDS_BIGENDIAN): Renamed to ...
48844
	(GRUB_TARGET_WORDS_BIGENDIAN): ... this.
48845
	* include/grub/powerpc/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed
48846
	to ...
48847
	(GRUB_TARGET_SIZEOF_VOID_P): ... this.
48848
	(GRUB_HOST_SIZEOF_LONG): Renamed to ...
48849
	(GRUB_TARGET_SIZEOF_LONG): ... this.
48850
	(GRUB_HOST_WORDS_BIGENDIAN): Renamed to ...
48851
	(GRUB_TARGET_WORDS_BIGENDIAN): ... this.
48852
	* include/grub/sparc64/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed
48853
	to ...
48854
	(GRUB_TARGET_SIZEOF_VOID_P): ... this.
48855
	(GRUB_HOST_SIZEOF_LONG): Renamed to ...
48856
	(GRUB_TARGET_SIZEOF_LONG): ... this.
48857
	(GRUB_HOST_WORDS_BIGENDIAN): Renamed to ...
48858
	(GRUB_TARGET_WORDS_BIGENDIAN): ... this.
48859
48860
	* include/grub/types.h [!GRUB_UTIL] (GRUB_CPU_SIZEOF_VOID_P): Use
48861
	GRUB_TARGET_SIZEOF_VOID_P instead of GRUB_HOST_SIZEOF_VOID_P.
48862
	[!GRUB_UTIL] (GRUB_CPU_SIZEOF_LONG): Use GRUB_TARGET_SIZEOF_LONG
48863
	instead of GRUB_HOST_SIZEOF_LONG.
48864
	[!GRUB_UTIL]: Refer to GRUB_TARGET_WORDS_BIGENDIAN instead of
48865
	GRUB_HOST_WORDS_BIGENDIAN to define or undefine
48866
	GRUB_CPU_WORDS_BIGENDIAN.
48867
	Refer to SIZEOF_VOID_P instead of GRUB_HOST_SIZEOF_VOID_P to
48868
	define grub_host_addr_t, grub_host_off_t, grub_host_size_t and
48869
	grub_host_ssize_t.
48870
48871
	* conf/i386-efi.rmk (noinst_UTILITIES): Removed.
48872
	(genmoddep_SOURCES): Likewise.
48873
	* conf/i386-pc.rmk (noinst_UTILITIES): Likewise.
48874
	(genmoddep_SOURCES): Likewise.
48875
	* conf/conf/powerpc-ieee1275.rmk (noinst_UTILITIES): Likewise.
48876
	(genmoddep_SOURCES): Likewise.
48877
	* conf/conf/conf/sparc64-ieee1275.rmk (noinst_UTILITIES):
48878
	Likewise.
48879
	(genmoddep_SOURCES): Likewise.
48880
48881
	* genmoddep.awk: New file.
48882
48883
	* genmk.rb (Image::rule): Use TARGET_CC, TARGET_CPPFLAGS,
48884
	TARGET_CFLAGS, TARGET_ASFLAGS and TARGET_LDFLAGS instead of CC,
48885
	CPPFLAGS, CFLAGS, ASFLAGS and LDFLAGS, respectively.
48886
	(PModule::rule): Likewise.
48887
	(Program::rule): Likewise.
48888
	(Utility::rule): Use CC, CPPFLAGS, CFLAGS and LDFLAGS instead of
48889
	BUILD_CC, BUILD_CPPFLAGS, BUILD_CFLAGS and BUILD_LDFLAGS,
48890
	respectively.
48891
48892
	* configure.ac: Rewritten intensively to use host and target
48893
	instead of build and host, respectively.
48894
48895
	* Makefile.in (pkglibdir): Use target_cpu instead of host_cpu.
48896
	(host_cpu): Removed.
48897
	(target_cpu): New variable.
48898
	(CPPFLAGS): Added @CPPFLAGS@ and -DGRUB_LIBDIR=\"$(pkglibdir)\".
48899
	(BUILD_CC): Removed.
48900
	(BUILD_CFLAGS): Likewise.
48901
	(BUILD_CPPFLAGS): Likewise.
48902
	(TARGET_CC): New variable.
48903
	(TARGET_CFLAGS): Likewise.
48904
	(TARGET_CPPFLAGS): Likewise.
48905
	(TARGET_LDFLAGS): Likewise.
48906
	(AWK): Likewise.
48907
	(include): Use target_cpu instead of host_cpu.
48908
	(moddep.lst:): Use genmoddep.awk instead of genmoddep.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48909
1.1.3 by Otavio Salvador
Import upstream version 1.94
48910
	* DISTLIST: Added genmoddep.awk. Removed util/genmoddep.c.
48911
48912
2006-05-29  Vesa Jaaskelainen  <chaac@nic.fi>
48913
48914
	* include/grub/script.h (grub_script_cmdif): Renamed field 'bool' to
48915
	'exec_to_evaluate'.  Renamed field 'true' to 'exec_on_true'.  Renamed
48916
	field 'false' to 'exec_on_false'.
48917
	(grub_script_create_cmdif): Renamed argument names to reflect above
48918
	changes.
48919
48920
	* normal/execute.c (grub_script_execute_cmdif): Likewise.
48921
48922
	* normal/script.c (grub_script_create_cmdif): Likewise.
48923
48924
2006-05-28  Yoshinori K. Okuji  <okuji@enbug.org>
48925
48926
	* fs/hfsplus.c (grub_hfsplus_btree_recoffset): Moved to near the
48927
	top.
48928
	(grub_hfsplus_btree_recptr): Likewise.
48929
	(grub_hfsplus_find_block): Do not take RETRY any longer. Use
48930
	FILEBLOCK both to pass a block number and store next block
48931
	number.
48932
	(grub_hfsplus_read_block): Rewritten heavily to support an extent
48933
	overflow file correctly. Specify errors appropriately, because
48934
	fshelp expects that GRUB_ERRNO is set when fails. Reuse
48935
	grub_hfsplus_btree_recptr to get the pointer to a found key.
48936
	(grub_hfsplus_btree_search): Return 1 instead of 0 when no match
48937
	is found.
48938
48939
	* conf/i386-efi.rmk (pkgdata_MODULES): Added _linux.mod and
48940
	linux.mod.
48941
	(_linux_mod_SOURCES): New variable.
48942
	(_linux_mod_CFLAGS): Likewise.
48943
	(_linux_mod_LDFLAGS): Likewise.
48944
	(linux_mod_SOURCES): Likewise.
48945
	(linux_mod_CFLAGS): Likewise.
48946
	(linux_mod_LDFLAGS): Likewise.
48947
48948
	* DISTLIST: Added loader/i386/efi/linux.c,
48949
	loader/i386/efi/linux_normal.c and
48950
	include/grub/i386/efi/loader.h.
48951
48952
	* loader/i386/efi/linux.c: New file.
48953
	* loader/i386/efi/linux_normal.c: Likewise.
48954
	* include/grub/i386/efi/loader.h: Likewise.
48955
48956
2006-05-27  Yoshinori K. Okuji  <okuji@enbug.org>
48957
48958
	* commands/blocklist.c: New file.
48959
48960
	* DISTLIST: Added commands/blocklist.c.
48961
48962
	* term/efi/console.c (grub_console_highlight_color): Use a lighter
48963
	color for the background, and a darker color for the foreground.
48964
	(grub_console_checkkey): Return READ_KEY.
48965
	(grub_console_cls): Set the background to
48966
	GRUB_EFI_BACKGROUND_BLACK temporarily to clean out the screen.
48967
48968
	* kern/efi/efi.c (grub_efi_exit_boot_services): New function.
48969
48970
	* include/grub/i386/linux.h (struct linux_kernel_params): Fixed
48971
	the size of "padding5", "hd0_drive_info" and "hd1_drive_info".
48972
48973
	* include/grub/efi/efi.h (grub_efi_exit_boot_services): New
48974
	prototype.
48975
48976
	* include/grub/efi/api.h (GRUB_EFI_TEXT_ATTR): Do not shift
48977
	BG. The spec is wrong again.
48978
48979
	* include/grub/normal.h [GRUB_UTIL] (grub_blocklist_init): New
48980
	prototype.
48981
	[GRUB_UTIL] (grub_blocklist_fini): Likewise.
48982
48983
	* conf/i386-pc.rmk (grub_emu_SOURCES): Added
48984
	commands/blocklist.c.
48985
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
48986
1.1.3 by Otavio Salvador
Import upstream version 1.94
48987
	* conf/common.rmk (pkgdata_MODULES): Added blocklist.mod.
48988
	(blocklist_mod_SOURCES): New variable.
48989
	(blocklist_mod_CFLAGS): Likewise.
48990
	(blocklist_mod_LDFLAGS): Likewise.
48991
48992
2006-05-20  Yoshinori K. Okuji  <okuji@enbug.org>
48993
48994
	* boot/i386/pc/boot.S (real_start): Set %si earlier to eliminate
48995
	duplication.
48996
	(lba_mode): Use %eax more intensively to reduce the code size.
48997
48998
2006-05-20  Marco Gerards  <marco@gnu.org>
48999
49000
	* normal/lexer.c (grub_script_yylex): Don't filter out newlines.
49001
49002
	* normal/parser.y (commandblock): Defined as <cmd>.  A subroutine
49003
	for `menuentry'.
49004
	(script): Accept leading newlines.
49005
	(newlines): New rule to describe 0 or more newlines.
49006
	(commands): Accept `command' with trailing newline.  Fixed the
49007
	order in which arguments were passed to `grub_script_add_cmd'.
49008
	Accept commands separated by newlines.
49009
	(function): Changed to accept newlines.
49010
	(menuentry) Rewritten.
49011
49012
	* normal/script.c (grub_script_create_cmdmenu): Add new entries in
49013
	front of the list, instead of to the end.
49014
49015
2006-05-19  Yoshinori K. Okuji  <okuji@enbug.org>
49016
49017
	* util/i386/pc/grub-install.in (bindir): New variable.
49018
	(grub_mkimage): Use BINDIR instead of SBINDIR. Reported by Lee
49019
	Shaver <lbgwjl@gmail.com>.
49020
49021
2006-05-14  Yoshinori K. Okuji  <okuji@enbug.org>
49022
49023
	* kern/i386/pc/startup.S: Include grub/cpu/linux.h instead of
49024
	grub/machine/linux.h
49025
	* loader/i386/pc/linux.c: Likewise.
49026
49027
	* include/grub/i386/pc/linux.h: Moved to ...
49028
	* include/grub/i386/linux.h: ... here.
49029
49030
	* include/grub/i386/linux.h (struct linux_kernel_params): New
49031
	struct.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49032
1.1.3 by Otavio Salvador
Import upstream version 1.94
49033
2006-05-09  Vesa Jaaskelainen  <chaac@nic.fi>
49034
49035
	* video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Corrected bounds
49036
	checking.
49037
	(grub_video_vbe_blit_glyph): Likewise.
49038
	(grub_video_vbe_blit_bitmap): Likewise.
49039
	(grub_video_vbe_blit_render_target): Likewise.
49040
49041
2006-05-09  Yoshinori K. Okuji  <okuji@enbug.org>
49042
49043
	* configure.ac (--with-platform): Properly quote the square
49044
	brackets.
49045
49046
2006-05-08  Marco Gerards  <marco@gnu.org>
49047
49048
	* conf/powerpc-ieee1275.rmk (grubof_HEADERS): Renamed from
49049
	this...
49050
	(kernel_elf_HEADERS): ...to this.  Updated all users.
49051
	(grubof_symlist.c): Renamed from this...
49052
	(kernel_elf_symlist.c): ...to this.  Updated all users.
49053
	(pkgdata_PROGRAMS): Changed `grubof' to `kernel.elf'.
49054
	(grubof_SOURCES): Renamed from this...
49055
	(kernel_elf_SOURCES): ...to this.
49056
	(grubof_HEADERS): Renamed from this...
49057
	(kernel_elf_HEADERS): ...to this.
49058
	(grubof_CFLAGS): Renamed from this...
49059
	(kernel_elf_CFLAGS): ...to this.
49060
	(grubof_ASFLAGS): Renamed from this...
49061
	(kernel_elf_ASFLAGS): ...to this.
49062
	(grubof_LDFLAGS): Renamed from this...
49063
	(kernel_elf_LDFLAGS): ...to this.
49064
49065
	* conf/sparc64-ieee1275.rmk (grubof_HEADERS): Renamed from
49066
	this...
49067
	(kernel_elf_HEADERS): ...to this.  Updated all users.
49068
	(grubof_symlist.c): Renamed from this...
49069
	(kernel_elf_symlist.c): ...to this.  Updated all users.
49070
	(pkgdata_PROGRAMS): Changed `grubof' to `kernel.elf'.
49071
	(grubof_SOURCES): Renamed from this...
49072
	(kernel_elf_SOURCES): ...to this.
49073
	(grubof_HEADERS): Renamed from this...
49074
	(kernel_elf_HEADERS): ...to this.
49075
	(grubof_CFLAGS): Renamed from this...
49076
	(kernel_elf_CFLAGS): ...to this.
49077
	(grubof_ASFLAGS): Renamed from this...
49078
	(kernel_elf_ASFLAGS): ...to this.
49079
	(grubof_LDFLAGS): Renamed from this...
49080
	(kernel_elf_LDFLAGS): ...to this.
49081
49082
	* util/powerpc/ieee1275/grub-mkimage.c (add_segments): Use
49083
	`kernel.elf' instead of `grubof'.
49084
49085
2006-05-08  Yoshinori K. Okuji  <okuji@enbug.org>
49086
49087
	Add --with-platform to configure. Use pkglibdir instead of
49088
	pkgdatadir. This is reported by Roger Leigh.
49089
49090
	* util/powerpc/ieee1275/grub-install.in (datadir): Removed.
49091
	(host_vendor): Likewise.
49092
	(host_os): Likewise.
49093
	(pkgdatadir): Likewise.
49094
	(platform): New variable.
49095
	(pkglibdir): Likewise.
49096
	Use PKGLIBDIR instead of PKGDATADIR.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49097
1.1.3 by Otavio Salvador
Import upstream version 1.94
49098
	* util/i386/pc/grub-install.in (datadir): Removed.
49099
	(host_vendor): Likewise.
49100
	(host_os): Likewise.
49101
	(pkgdatadir): Likewise.
49102
	(platform): New variable.
49103
	(pkglibdir): Likewise.
49104
	Use PKGLIBDIR instead of PKGDATADIR.
49105
49106
	* util/powerpc/ieee1275/grub-mkimage.c (usage): Use GRUB_LIBDIR
49107
	instead of GRUB_DATADIR.
49108
	(main): Likewise.
49109
	* util/i386/pc/grub-mkimage.c (usage): Likewise.
49110
	(main): Likewise.
49111
	* util/i386/efi/grub-mkimage.c (usage): Likewise.
49112
	(main): Likewise.
49113
49114
	* configure.ac (--with-platform): New option.
49115
	Use PLATFORM instead of HOST_VENDOR to specify a platform.
49116
49117
	* Makefile.in: Include a makefile based on PLATFORM instead of
49118
	HOST_VENDOR.
49119
	(pkgdatadir): Not appended by the machine type.
49120
	(pkglibdir): Appended by the machine type.
49121
	(host_vendor): Removed.
49122
	(platform): New variable.
49123
	(BUILD_CPPFLAGS): Specify GRUB_LIBDIR instead of GRUB_DATADIR.
49124
	(install-local): Use PKGLIBDIR instead of PKGDATADIR.
49125
	(uninstall): Likewise.
49126
49127
2006-05-07  Yoshinori K. Okuji  <okuji@enbug.org>
49128
49129
	Use the environment context in the menu. Remove the commands
49130
	"default" and "timeout", and use variables instead.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49131
1.1.3 by Otavio Salvador
Import upstream version 1.94
49132
	* normal/menu.c: Include grub/env.h.
49133
	(print_entry): Cast TITLE to silence gcc.
49134
	(get_timeout): New function.
49135
	(set_timeout): Likewise.
49136
	(get_entry_number): Likewise.
49137
	(run_menu): Use a default entry, a fallback entry and a timeout
49138
	in the environment variables "default", "fallback" and
49139
	"timeout". Also, tweak the default entry if it is not within the
49140
	current menu entries.
49141
	(grub_menu_run): Use a fallback entry in the environment variable
49142
	"fallback".
49143
49144
	* normal/main.c (read_config_file): Do not initialize
49145
	NEWMENU->DEFAULT_ENTRY, NEWMENU->FALLBACK_ENTRY or
49146
	NEWMENU->TIMEOUT.
49147
	(grub_normal_execute): Use a data slot to store the menu.
49148
49149
	* include/grub/normal.h (struct grub_menu): Removed default_entry,
49150
	fallback_entry and timeout.
49151
	(struct grub_menu_list): Removed.
49152
	(grub_menu_list_t): Likewise.
49153
	(struct grub_context): Likewise.
49154
	(grub_context_t): Likewise.
49155
	(grub_context_get): Likewise.
49156
	(grub_context_get_current_menu): Likewise.
49157
	(grub_context_push_menu): Likewise.
49158
	(grub_context_pop_menu): Likewise.
49159
	(grub_default_init): Likewise.
49160
	(grub_default_fini): Likewise.
49161
	(grub_timeout_init): Likewise.
49162
	(grub_timeout_fini): Likewise.
49163
49164
	* conf/sparc64-ieee1275.rmk (pkgdata_MODULES): Removed default.mod
49165
	and timeout.mod.
49166
	(normal_mod_SOURCES): Removed normal/context.c.
49167
49168
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Removed
49169
	commands/default.c, commands/timeout.c and normal/context.c.
49170
	(normal_mod_SOURCES): Removed normal/context.c.
49171
49172
	* conf/i386-pc.rmk (grub_emu_SOURCES): Removed commands/default.c,
49173
	commands/timeout.c and normal/context.c.
49174
	(normal_mod_SOURCES): Removed normal/context.c.
49175
49176
	* conf/i386-efi.rmk (grub_emu_SOURCES): Removed
49177
	commands/default.c, commands/timeout.c and normal/context.c.
49178
	(normal_mod_SOURCES): Removed normal/context.c.
49179
49180
	* conf/common.rmk (pkgdata_MODULES): Removed default.mod and
49181
	timeout.mod.
49182
	(default_mod_SOURCES): Removed.
49183
	(default_mod_CFLAGS): Likewise.
49184
	(default_mod_LDFLAGS): Likewise.
49185
	(timeout_mod_SOURCES): Removed.
49186
	(timeout_mod_CFLAGS): Likewise.
49187
	(timeout_mod_LDFLAGS): Likewise.
49188
49189
	* DISTLIST: Removed commands/default.c, commands/timeout.c and
49190
	normal/context.c.
49191
49192
	* commands/default.c: Removed.
49193
	* commands/timeout.c: Likewise.
49194
	* normal/context.c: Likewise.
49195
49196
2006-05-07  Vesa Jaaskelainen  <chaac@nic.fi>
49197
49198
	* kern/i386/pc/startup.S (grub_exit): Added missing .code32 tag.
49199
49200
2006-05-02  Yoshinori K. Okuji  <okuji@enbug.org>
49201
49202
	* kern/env.c (struct grub_env_context): Removed "sorted". Renamed
49203
	"next" to "prev" for readability.
49204
	(struct grub_env_sorted_var): New struct.
49205
	(grub_env_context): Renamed to ...
49206
	(initial_context): ... this.
49207
	(grub_env_var_context): Renamed to ...
49208
	(current_context): ... this.
49209
	(grub_env_find): Look only at CURRENT_CONTEXT.
49210
	(grub_env_context_open): Rewritten to copy exported variables from
49211
	previous context.
49212
	(grub_env_context_close): Rewritten according to the new
49213
	scheme. Also, add an assertion to prevent the initial context from
49214
	removed.
49215
	(grub_env_insert): Removed the code for the sorted list.
49216
	(grub_env_remove): Likewise.
49217
	(grub_env_export): Simply mark the variable with
49218
	GRUB_ENV_VAR_GLOBAL.
49219
	(grub_env_set): A cosmetic change for naming consistency.
49220
	(grub_env_get): Likewise.
49221
	(grub_env_unset): Likewise.
49222
	(grub_env_iterate): Rewritten to sort variables within this
49223
	function.
49224
	(grub_register_variable_hook): Fixed for naming consistency. Call
49225
	grub_env_find again, only if NAME is not found at the first time.
49226
	(mangle_data_slot_name): New function.
49227
	(grub_env_set_data_slot): Likewise.
49228
	(grub_env_get_data_slot): Likewise.
49229
	(grub_env_unset_data_slot): Likewise.
49230
49231
	* include/grub/env.h (grub_env_var_type): New enum.
49232
	(GRUB_ENV_VAR_LOCAL): New constant.
49233
	(GRUB_ENV_VAR_GLOBAL): Likewise.
49234
	(GRUB_ENV_VAR_DATA): Likewise.
49235
	(struct grub_env_var): Removed "sort_next" and "sort_prevp". Added
49236
	"type".
49237
	(grub_env_set): Replace VAR with NAME for consistency.
49238
	(grub_register_variable_hook): Likewise.
49239
	(grub_env_export): Specify the name of the argument.
49240
	(grub_env_set_data_slot): New prototype.
49241
	(grub_env_get_data_slot): Likewise.
49242
	(grub_env_unset_data_slot): Likewise.
49243
49244
2006-04-30  Yoshinori K. Okuji  <okuji@enbug.org>
49245
49246
	Extend the loader so that GRUB can accept a loader which comes
49247
	back to GRUB when a loaded image exits. Also, this change adds
49248
	support for a chainloader on EFI.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49249
1.1.3 by Otavio Salvador
Import upstream version 1.94
49250
	* term/efi/console.c: Include grub/misc.h.
49251
	(grub_console_checkkey): Display a scan code on the top for
49252
	debugging. This will be removed once the EFI port gets stable.
49253
	Correct the scan code mapping.
49254
49255
	* kern/efi/mm.c (sort_memory_map): Sort in a descending order to
49256
	allocate memory from larger regions, in order to reduce the number
49257
	of allocated regions. Otherwise, the MacOSX loader panics.
49258
	(filter_memory_map): Avoid less than 1MB for compatibility with
49259
	other loaders.
49260
	(add_memory_regions): Allocate from the tail of a region, if
49261
	possible, to avoid allocating a region near to 1MB, for the MacOSX
49262
	loader.
49263
49264
	* kern/efi/init.c (grub_efi_set_prefix): Specify
49265
	GRUB_EFI_IMAGE_HANDLE to grub_efi_get_loaded_image.
49266
49267
	* kern/efi/efi.c (grub_efi_get_loaded_image): Accept a new
49268
	argument IMAGE_HANDLE and specify it to get a loaded image.
49269
	(grub_arch_modules_addr): Specify GRUB_EFI_IMAGE_HANDLE to
49270
	grub_efi_get_loaded_image.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49271
	(grub_efi_get_filename): Divide the length by the size of
1.1.3 by Otavio Salvador
Import upstream version 1.94
49272
	grub_efi_char16_t.
49273
	(grub_efi_get_device_path): New function.
49274
	(grub_efi_print_device_path): Print End Device Path nodes. Divide
49275
	the length by the size of grub_efi_char16_t for a file path device
49276
	path node.
49277
49278
	* kern/loader.c (grub_loader_noreturn): New variable.
49279
	(grub_loader_set): Accept a new argument NORETURN. Set
49280
	GRUB_LOADER_NORETURN to NORETURN.
49281
	All callers changed.
49282
	(grub_loader_boot): If GRUB_LOADER_NORETURN is false, do not call
49283
	grub_machine_fini.
49284
49285
	* include/grub/efi/efi.h (grub_efi_get_device_path): New
49286
	prototype.
49287
	(grub_efi_get_loaded_image): Take an argument to specify an image
49288
	handle.
49289
49290
	* include/grub/loader.h (grub_loader_set): Added one more argument
49291
	NORETURN.
49292
49293
	* disk/efi/efidisk.c (make_devices): Use grub_efi_get_device_path
49294
	instead of grub_efi_open_protocol.
49295
	(grub_efidisk_get_device_name): Likewise.
49296
	(grub_efidisk_close): Print a newline.
49297
	(grub_efidisk_get_device_handle): Fixed to use
49298
	GRUB_EFI_DEVICE_PATH_SUBTYPE instead of
49299
	GRUB_EFI_DEVICE_PATH_TYPE.
49300
49301
	* disk/efi/efidisk.c (device_path_guid): Moved to ...
49302
	* kern/efi/efi.c (device_path_guid): ... here.
49303
49304
	* conf/i386-efi.rmk (pkgdata_MODULES): Added _chain.mod and
49305
	chain.mod.
49306
	(kernel_mod_HEADERS): Added efi/disk.h.
49307
	(_chain_mod_SOURCES): New variable.
49308
	(_chain_mod_CFLAGS): Likewise.
49309
	(_chain_mod_LDFLAGS): Likewise.
49310
	(chain_mod_SOURCES): Likewise.
49311
	(chain_mod_CFLAGS): Likewise.
49312
	(chain_mod_LDFLAGS): Likewise.
49313
49314
	* DISTLIST: Added include/grub/efi/chainloader.h,
49315
	loader/efi/chainloader.c and loader/efi/chainloader_normal.c.
49316
49317
	* include/grub/efi/chainloader.h: New file.
49318
	* loader/efi/chainloader.c: Likewise.
49319
	* loader/efi/chainloader_normal.c: Likewise.
49320
49321
2006-04-30  Marco Gerards  <marco@gnu.org>
49322
49323
	* commands/configfile.c (grub_cmd_source): New function.
49324
	(GRUB_MOD_INIT): Register the commands `source' and `.'.
49325
	(GRUB_MOD_FINI): De-register the commands `source' and `.'.
49326
49327
2006-04-30  Marco Gerards  <marco@gnu.org>
49328
49329
	* normal/execute.c (grub_script_execute_cmd): Change the return
49330
	type to `grub_err_t'.  Correctly return the error.
49331
	(grub_script_execute_cmdline): In case a command line is not a
49332
	command or a function, try to interpret it as an assignment.
49333
49334
2006-04-30  Yoshinori K. Okuji  <okuji@enbug.org>
49335
49336
	* fs/hfsplus.c (grub_hfsplus_read_block): Fixed a memory leak.
49337
	(grub_hfsplus_iterate_dir): Reordered to skip unknown nodes. Also,
49338
	skip a node whose name is obviously invalid as UTF-16,
49339
	i.e. contains a NUL character. Stop the iteration when the last
49340
	directory entry is found. Instead of using the return value of
49341
	grub_hfsplus_btree_iterate_node, store the value in RET and use
49342
	it, because the iterator can be stopped by the last directory
49343
	entry.
49344
49345
2006-04-30  Marco Gerards  <marco@gnu.org>
49346
49347
	* include/grub/env.h (grub_env_export): New prototype.  Reported
49348
	by Jan C. Kleinsorge <jan.kleinsorge@udo.edu>.
49349
49350
2006-04-30  Marco Gerards  <marco@gnu.org>
49351
49352
	* fs/hfsplus.c (grub_hfsplus_iterate_dir): Correctly calculate the
49353
	size of the extents in a catalog file record.
49354
49355
2006-04-29  Marco Gerards  <marco@gnu.org>
49356
49357
	* commands/configfile.c (grub_cmd_configfile): Execute the
49358
	configfile within its own context.
49359
49360
	* include/grub/env.h (grub_env_context_open): New prototype.
49361
	(grub_env_context_close): Likewise.
49362
49363
	* kern/env.c (grub_env): Removed.
49364
	(grub_env_sorted): Likewise.
49365
	(grub_env_context): New variable.
49366
	(grub_env_var_context): Likewise.
49367
	(grub_env_find): Search both the active context and the global
49368
	context.
49369
	(grub_env_context_open): New function.
49370
	(grub_env_context_close): Likewise.
49371
	(grub_env_insert): Likewise.
49372
	(grub_env_remove): Likewise.
49373
	(grub_env_export): Likewise.
49374
	(grub_env_set): Changed to use helper functions to avoid code
49375
	duplication.
49376
	(grub_env_iterate): Rewritten so both the current context and the
49377
	global context are being used.
49378
49379
	* normal/command.c (export_command): New function.
49380
	(grub_command_init): Register the `export' function.
49381
49382
2006-04-26  Yoshinori K. Okuji  <okuji@enbug.org>
49383
49384
	* util/i386/pc/grub-mkimage.c (compress_kernel): Cast arguments
49385
	explicitly to suppress gcc's warnings.
49386
	* fs/fat.c (grub_fat_find_dir): Likewise.
49387
	(grub_fat_label): Likewise.
49388
	* fs/xfs.c (grub_xfs_read_inode): Likewise.
49389
	(grub_xfs_mount): Likewise.
49390
	(grub_xfs_label): Likewise.
49391
	* fs/affs.c (grub_affs_mount): Likewise.
49392
	(grub_affs_label): Likewise.
49393
	(grub_affs_iterate_dir): Likewise.
49394
	* fs/sfs.c (grub_sfs_mount): Likewise.
49395
	(grub_sfs_iterate_dir): Likewise.
49396
	* fs/ufs.c (grub_ufs_lookup_symlink): Likewise.
49397
	* fs/hfs.c (grub_hfs_mount): Likewise.
49398
	(grub_hfs_cmp_catkeys): Likewise.
49399
	(grub_hfs_find_dir): Likewise.
49400
	(grub_hfs_dir): Likewise.
49401
	(grub_hfs_label): Likewise.
49402
	* fs/jfs.c (grub_jfs_mount): Likewise.
49403
	(grub_jfs_opendir): Likewise.
49404
	(grub_jfs_getent): Likewise.
49405
	(grub_jfs_lookup_symlink): Likewise.
49406
	(grub_jfs_label): Likewise.
49407
	* fs/hfsplus.c (grub_hfsplus_cmp_catkey): Likewise.
49408
	(grub_hfsplus_iterate_dir): Likewise.
49409
	(grub_hfsplus_btree_iterate_node): Made static.
49410
49411
	* util/grub-emu.c (prefix): New variable.
49412
	(grub_machine_set_prefix): New function.
49413
	(main): Do not set the environment variable "prefix" here. Only
49414
	set PREFIX, which is used later by grub_machine_set_prefix.
49415
49416
	* include/grub/video.h: Do not include grub/symbol.h.
49417
	(grub_video_register): Not exported. This symbol is not defined in
49418
	the kernel.
49419
	(grub_video_unregister): Likewise.
49420
	(grub_video_iterate): Likewise.
49421
	(grub_video_setup): Likewise.
49422
	(grub_video_restore): Likewise.
49423
	(grub_video_get_info): Likewise.
49424
	(grub_video_get_blit_format): Likewise.
49425
	(grub_video_set_palette): Likewise.
49426
	(grub_video_get_palette): Likewise.
49427
	(grub_video_set_viewport): Likewise.
49428
	(grub_video_get_viewport): Likewise.
49429
	(grub_video_map_color): Likewise.
49430
	(grub_video_map_rgb): Likewise.
49431
	(grub_video_map_rgba): Likewise.
49432
	(grub_video_fill_rect): Likewise.
49433
	(grub_video_blit_glyph): Likewise.
49434
	(grub_video_blit_bitmap): Likewise.
49435
	(grub_video_blit_render_target): Likewise.
49436
	(grub_video_scroll): Likewise.
49437
	(grub_video_swap_buffers): Likewise.
49438
	(grub_video_create_render_target): Likewise.
49439
	(grub_video_delete_render_target): Likewise.
49440
	(grub_video_set_active_render_target): Likewise.
49441
49442
	* include/grub/symbol.h [GRUB_SYMBOL_GENERATOR] (EXPORT_FUNC):
49443
	Undefined.
49444
	[GRUB_SYMBOL_GENERATOR] (EXPORT_VAR): Likewise.
49445
49446
	* conf/sparc64-ieee1275.rmk (grubof_symlist.c): Depended on
49447
	config.h. Use gensymlist.sh instead of $(srcdir)/gensymlist.sh.
49448
	(kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
49449
	instead of $(srcdir)/genkernsyms.sh.
49450
49451
	* conf/powerpc-ieee1275.rmk (grubof_symlist.c): Depended on
49452
	config.h. Use gensymlist.sh instead of $(srcdir)/gensymlist.sh.
49453
	(kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
49454
	instead of $(srcdir)/genkernsyms.sh.
49455
49456
	* conf/i386-pc.rmk (symlist.c): Depended on config.h. Use
49457
	gensymlist.sh instead of $(srcdir)/gensymlist.sh.
49458
	(kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
49459
	instead of $(srcdir)/genkernsyms.sh.
49460
49461
	* conf/i386-efi.rmk (symlist.c): Depended on config.h. Use
49462
	gensymlist.sh instead of $(srcdir)/gensymlist.sh.
49463
	(kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
49464
	instead of $(srcdir)/genkernsyms.sh.
49465
49466
	* configure.ac (AC_CONFIG_FILES): Added gensymlist.sh and
49467
	genkernsyms.sh.
49468
49469
	* Makefile.in (DISTCLEANFILES): Added gensymlist.sh and
49470
	genkernsyms.sh.
49471
	(gensymlist.sh): New target.
49472
	(genkernsyms.sh): Likewise.
49473
49474
	* DISTLIST: Removed genkernsyms.sh and gensymlist.sh. Added
49475
	genkernsyms.sh.in and gensymlist.sh.in.
49476
49477
	* genkernsyms.sh: Removed.
49478
	* gensymlist.sh: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49479
1.1.3 by Otavio Salvador
Import upstream version 1.94
49480
	* genkernsyms.sh.in: New file.
49481
	* gensymlist.sh.in: Likewise.
49482
49483
2006-04-25  Hollis Blanchard  <hollis@penguinppc.org>
49484
49485
	* kern/powerpc/ieee1275/init.c (grub_machine_set_prefix): Do not
49486
	clobber "prefix", since we may have already set it manually.
49487
49488
2006-04-25  Hollis Blanchard  <hollis@penguinppc.org>
49489
49490
	* kern/misc.c (abort): New alias for grub_abort.
49491
49492
2006-04-25  Yoshinori K. Okuji  <okuji@enbug.org>
49493
49494
	A new machine-specific function "grub_machine_set_prefix" is
49495
	defined. This is called after loading modules, so that a prefix
49496
	initialization can use modules. Also, this change adds an
49497
	intensive debugging feature for the memory manager via the
49498
	configure option "--enable-mm-debug".
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49499
1.1.3 by Otavio Salvador
Import upstream version 1.94
49500
	* partmap/gpt.c (gpt_partition_map_iterate): Add one more into
49501
	PART.LEN.
49502
49503
	* kern/sparc64/ieee1275/init.c (abort): Removed.
49504
	(grub_stop): Likewise.
49505
	(grub_exit): New function.
49506
	(grub_set_prefix): Renamed to ...
49507
	(grub_machine_set_prefix): ... this.
49508
	(grub_machine_init): Do not call grub_set_prefix.
49509
49510
	* kern/powerpc/ieee1275/init.c (grub_set_prefix): Renamed to ...
49511
	(grub_machine_set_prefix): ... this.
49512
	(grub_machine_init): Do not call grub_set_prefix.
49513
49514
	* kern/i386/pc/init.c (grub_machine_set_prefix): New function.
49515
	(grub_machine_init): Do not set the prefix here.
49516
49517
	* kern/i386/efi/init.c (grub_machine_set_prefix): New function.
49518
49519
	* kern/efi/init.c: Include grub/mm.h.
49520
	(grub_efi_set_prefix): New function.
49521
49522
	* kern/efi/efi.c (grub_exit): Call grub_efi_fini.
49523
	(grub_efi_get_filename): New function.
49524
	(grub_print_device_path): Renamed to ...
49525
	(grub_efi_print_device_path): ... this.
49526
49527
	* kern/mm.c [MM_DEBUG] (grub_malloc): Undefined.
49528
	[MM_DEBUG] (grub_realloc): Likewise.
49529
	[MM_DEBUG] (grub_free): Likewise.
49530
	[MM_DEBUG] (grub_memalign): Likewise.
49531
	[MM_DEBUG] (grub_mm_debug): New variable.
49532
	[MM_DEBUG] (grub_debug_malloc): New function.
49533
	[MM_DEBUG] (grub_debug_free): New function.
49534
	[MM_DEBUG] (grub_debug_realloc): New function.
49535
	[MM_DEBUG] (grub_debug_memalign): New function.
49536
49537
	* kern/misc.c (grub_abort): Print a newline to distinguish
49538
	the message.
49539
49540
	* kern/main.c (grub_main): Call grub_machine_set_prefix and
49541
	grub_set_root_dev after loading modules. This is necessary when
49542
	setting a prefix depends on modules.
49543
49544
	* include/grub/efi/efi.h (grub_print_device_path): Renamed to ...
49545
	(grub_efi_print_device_path): ... this.
49546
	(grub_efi_get_filename): New prototype.
49547
	(grub_efi_set_prefix): Likewise.
49548
49549
	* include/grub/efi/disk.h: Include grub/efi/api.h, grub/symbol.h
49550
	and grub/disk.h.
49551
	(grub_efidisk_get_device_handle): New prototype.
49552
	(grub_efidisk_get_device_name): Likewise.
49553
49554
	* include/grub/mm.h: Include config.h.
49555
	(MM_DEBUG): Removed.
49556
	[MM_DEBUG && !GRUB_UTIL] (grub_mm_debug): New prototype.
49557
	[MM_DEBUG && !GRUB_UTIL] (grub_malloc): New macro.
49558
	[MM_DEBUG && !GRUB_UTIL] (grub_realloc): Likewise.
49559
	[MM_DEBUG && !GRUB_UTIL] (grub_memalign): Likewise.
49560
	[MM_DEBUG && !GRUB_UTIL] (grub_free): Likewise.
49561
	[MM_DEBUG && !GRUB_UTIL] (grub_debug_malloc): New prototype.
49562
	[MM_DEBUG && !GRUB_UTIL] (grub_debug_realloc): New prototype.
49563
	[MM_DEBUG && !GRUB_UTIL] (grub_debug_memalign): New prototype.
49564
	[MM_DEBUG && !GRUB_UTIL] (grub_debug_free): New prototype.
49565
49566
	* include/grub/kernel.h (grub_machine_set_prefix): New prototype.
49567
49568
	* disk/efi/efidisk.c: Include grub/partition.h.
49569
	(iterate_child_devices): New function.
49570
	(add_device): First, compare only last device path nodes, so that
49571
	devices are sorted by the types.
49572
	(grub_efidisk_get_device_handle): New function.
49573
	(grub_efidisk_get_device_name): Likewise.
49574
49575
	* configure.ac (--enable-mm-debug): New option to enable the
49576
	memory manager debugging feature. This makes the binary much
49577
	bigger, so is disabled by default.
49578
49579
2006-04-23  Yoshinori K. Okuji  <okuji@enbug.org>
49580
49581
	Use grub_abort instead of grub_stop, and grub_exit must be
49582
	define in each architecture now. Also, this change adds support
49583
	for EFI disks.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49584
1.1.3 by Otavio Salvador
Import upstream version 1.94
49585
	* util/i386/pc/grub-probefs.c: Include grub/term.h.
49586
	(grub_getkey): New function.
49587
	(grub_term_get_current): Likewise.
49588
49589
	* util/i386/pc/grub-setup.c: Include grub/term.h.
49590
	(grub_getkey): New function.
49591
	(grub_term_get_current): Likewise.
49592
49593
	* util/misc.c (grub_stop): Renamed to ...
49594
	(grub_exit): ... this.
49595
49596
	* kern/powerpc/ieee1275/init.c (abort): Renamed to ...
49597
	(grub_exit): ... this.
49598
	(grub_machine_init): Use grub_abort instead of abort.
49599
	(grub_stop): Removed.
49600
49601
	* kern/powerpc/ieee1275/cmain.c (cmain): Use grub_abort instead of
49602
	abort.
49603
49604
	* kern/i386/pc/startup.S (grub_exit): New function.
49605
	(cold_reboot): New label.
49606
49607
	* kern/efi/init.c: Include grub/efi/disk.h and grub/env.h.
49608
	(grub_efi_init): Call grub_efidisk_init.
49609
	(grub_efi_fini): Call grub_efidisk_fini.
49610
49611
	* kern/efi/efi.c: Include grub/mm.h.
49612
	(grub_efi_console_control_guid): Renamed to ...
49613
	(console_control_guid): ... this.
49614
	(grub_efi_loaded_image_guid): Renamed to ...
49615
	(loaded_image_guid): ... this.
49616
	(grub_efi_locate_handle): New function.
49617
	(grub_efi_open_protocol): Likewise.
49618
	(grub_efi_set_text_mode): Use CONSOLE_CONTROL_GUID instead of
49619
	GRUB_EFI_CONSOLE_CONTROL_GUID.
49620
	(grub_efi_exit): Removed.
49621
	(grub_stop): Likewise.
49622
	(grub_efi_get_loaded_image): Use grub_efi_open_protocol.
49623
	(grub_exit): New function.
49624
	(grub_print_device_path): Likewise.
49625
49626
	* kern/rescue.c (grub_rescue_cmd_exit): New function.
49627
	(grub_enter_rescue_mode): Register "exit".
49628
49629
	* kern/misc.c (grub_real_dprintf): A cosmetic change.
49630
	(grub_abort): New function.
49631
49632
	* kern/err.c (grub_fatal): Use grub_abort instead of grub_stop.
49633
49634
	* include/grub/sparc64/ieee1275/kernel.h (abort): Removed.
49635
49636
	* include/grub/powerpc/ieee1275/kernel.h (abort): Removed.
49637
49638
	* include/grub/efi/efi.h (grub_efi_exit): Removed.
49639
	(grub_print_device_path): New prototype.
49640
	(grub_efi_locate_handle): Likewise.
49641
	(grub_efi_open_protocol): Likewise.
49642
49643
	* include/grub/efi/disk.h (grub_efidisk_fini): New file.
49644
	* disk/efi/efidisk.c: Likewise.
49645
49646
	* DISTLIST: Added disk/efi/efidisk.c and include/grub/efi/disk.h.
49647
49648
	* include/grub/efi/console_control.h
49649
	(GRUB_EFI_CONSOLE_CONTROL_GUID): Use an array for the last 8 bytes.
49650
49651
	* include/grub/efi/api.h (GRUB_EFI_LOADED_IMAGE_GUID): Specify the
49652
	last 8 bytes as an array.
49653
	(GRUB_EFI_DISK_IO_GUID): New macro.
49654
	(GRUB_EFI_BLOCK_IO_GUID): Likewise.
49655
	(GRUB_EFI_DEVICE_PATH_GUID): Likewise.
49656
	(grub_efi_ipv6_address_t): Change the type to grub_uint16_t from
49657
	grub_uint8_t.
49658
	(struct grub_efi_guid): Use an array to specify the last 8 bytes.
49659
	(struct grub_efi_device_path): Rename the member "sub_type" to
49660
	"subtype".
49661
	(GRUB_EFI_DEVICE_PATH_TYPE): New macro.
49662
	(GRUB_EFI_DEVICE_PATH_SUBTYPE): Likewise.
49663
	(GRUB_EFI_DEVICE_PATH_LENGTH): Likewise.
49664
	(GRUB_EFI_END_DEVICE_PATH_TYPE): Likewise.
49665
	(GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE): Likewise.
49666
	(GRUB_EFI_END_THIS_DEVICE_PATH_SUBTYPE): Likewise.
49667
	(GRUB_EFI_END_ENTIRE_DEVICE_PATH): Likewise.
49668
	(GRUB_EFI_NEXT_DEVICE_PATH): Likewise.
49669
	(GRUB_EFI_HARDWARE_DEVICE_PATH_TYPE): Likewise.
49670
	(GRUB_EFI_PCI_DEVICE_PATH_SUBTYPE): Likewise.
49671
	(struct grub_efi_pci_device_path): New structure.
49672
	(grub_efi_pci_device_path_t): New type.
49673
	(GRUB_EFI_PCCARD_DEVICE_PATH_SUBTYPE): New macro.
49674
	(struct grub_efi_pccard_device_path): New structure.
49675
	(grub_efi_pccard_device_path_t): New type.
49676
	(GRUB_EFI_MEMORY_MAPPED_DEVICE_PATH_SUBTYPE): New macro.
49677
	(struct grub_efi_memory_mapped_device_path): New structure.
49678
	(grub_efi_memory_mapped_device_path_t): New type.
49679
	(GRUB_EFI_VENDOR_DEVICE_PATH_SUBTYPE): New macro.
49680
	(struct grub_efi_vendor_device_path): New structure.
49681
	(grub_efi_vendor_device_path_t): New type.
49682
	(GRUB_EFI_CONTROLLER_DEVICE_PATH_SUBTYPE): New macro.
49683
	(struct grub_efi_controller_device_path): New structure.
49684
	(grub_efi_controller_device_path_t): New type.
49685
	(GRUB_EFI_ACPI_DEVICE_PATH_TYPE): New macro.
49686
	(GRUB_EFI_ACPI_DEVICE_PATH_SUBTYPE): Likewise.
49687
	(struct grub_efi_acpi_device_path): New structure.
49688
	(grub_efi_acpi_device_path_t): New type.
49689
	(GRUB_EFI_EXPANDED_ACPI_DEVICE_PATH_SUBTYPE): New macro.
49690
	(struct grub_efi_expanded_acpi_device_path): New structure.
49691
	(grub_efi_expanded_acpi_device_path_t): New type.
49692
	(GRUB_EFI_EXPANDED_ACPI_HIDSTR): New macro.
49693
	(GRUB_EFI_EXPANDED_ACPI_UIDSTR): Likewise.
49694
	(GRUB_EFI_EXPANDED_ACPI_CIDSTR): Likewise.
49695
	(GRUB_EFI_MESSAGING_DEVICE_PATH_TYPE): Likewise.
49696
	(GRUB_EFI_ATAPI_DEVICE_PATH_SUBTYPE): Likewise.
49697
	(struct grub_efi_atapi_device_path): New structure.
49698
	(grub_efi_atapi_device_path_t): New type.
49699
	(GRUB_EFI_FIBRE_CHANNEL_DEVICE_PATH_SUBTYPE): New macro.
49700
	(struct grub_efi_fibre_channel_device_path): New structure.
49701
	(grub_efi_fibre_channel_device_path_t): New type.
49702
	(GRUB_EFI_1394_DEVICE_PATH_SUBTYPE): New macro.
49703
	(struct grub_efi_1394_device_path): New structure.
49704
	(grub_efi_1394_device_path_t): New type.
49705
	(GRUB_EFI_USB_DEVICE_PATH_SUBTYPE): New macro.
49706
	(struct grub_efi_usb_device_path): New structure.
49707
	(grub_efi_usb_device_path_t): New type.
49708
	(GRUB_EFI_USB_CLASS_DEVICE_PATH_SUBTYPE): New macro.
49709
	(struct grub_efi_usb_class_device_path): New structure.
49710
	(grub_efi_usb_class_device_path_t): New type.
49711
	(GRUB_EFI_I2O_DEVICE_PATH_SUBTYPE): New macro.
49712
	(struct grub_efi_i2o_device_path): New structure.
49713
	(grub_efi_i2o_device_path_t): New type.
49714
	(GRUB_EFI_MAC_ADDRESS_DEVICE_PATH_SUBTYPE): New macro.
49715
	(struct grub_efi_mac_address_device_path): New structure.
49716
	(grub_efi_mac_address_device_path_t): New type.
49717
	(GRUB_EFI_IPV4_DEVICE_PATH_SUBTYPE): New macro.
49718
	(struct grub_efi_ipv4_device_path): New structure.
49719
	(grub_efi_ipv4_device_path_t): New type.
49720
	(GRUB_EFI_IPV6_DEVICE_PATH_SUBTYPE): New macro.
49721
	(struct grub_efi_ipv6_device_path): New structure.
49722
	(grub_efi_ipv6_device_path_t): New type.
49723
	(GRUB_EFI_INFINIBAND_DEVICE_PATH_SUBTYPE): New macro.
49724
	(struct grub_efi_infiniband_device_path): New structure.
49725
	(grub_efi_infiniband_device_path_t): New type.
49726
	(GRUB_EFI_UART_DEVICE_PATH_SUBTYPE): New macro.
49727
	(struct grub_efi_uart_device_path): New structure.
49728
	(grub_efi_uart_device_path_t): New type.
49729
	(GRUB_EFI_VENDOR_MESSAGING_DEVICE_PATH_SUBTYPE): New macro.
49730
	(struct grub_efi_vendor_messaging_device_path): New structure.
49731
	(grub_efi_vendor_messaging_device_path_t): New type.
49732
	(GRUB_EFI_MEDIA_DEVICE_PATH_TYPE): New macro.
49733
	(GRUB_EFI_HARD_DRIVE_DEVICE_PATH_SUBTYPE): Likewise.
49734
	(struct grub_efi_hard_drive_device_path): New structure.
49735
	(grub_efi_hard_drive_device_path_t): New type.
49736
	(GRUB_EFI_CDROM_DEVICE_PATH_SUBTYPE): New macro.
49737
	(struct grub_efi_cdrom_device_path): New structure.
49738
	(grub_efi_cdrom_device_path_t): New type.
49739
	(GRUB_EFI_VENDOR_MEDIA_DEVICE_PATH_SUBTYPE): New macro.
49740
	(struct grub_efi_vendor_media_device_path): New structure.
49741
	(grub_efi_vendor_media_device_path_t): New type.
49742
	(GRUB_EFI_FILE_PATH_DEVICE_PATH_SUBTYPE): New macro.
49743
	(struct grub_efi_file_path_device_path): New structure.
49744
	(grub_efi_file_path_device_path_t): New type.
49745
	(GRUB_EFI_PROTOCOL_DEVICE_PATH_SUBTYPE): New macro.
49746
	(struct grub_efi_protocol_device_path): New structure.
49747
	(grub_efi_protocol_device_path_t): New type.
49748
	(GRUB_EFI_BIOS_DEVICE_PATH_TYPE): New macro.
49749
	(GRUB_EFI_BIOS_DEVICE_PATH_SUBTYPE): Likewise.
49750
	(struct grub_efi_bios_device_path): New structure.
49751
	(grub_efi_bios_device_path_t): New type.
49752
	(struct grub_efi_disk_io): New structure.
49753
	(grub_efi_disk_io_t): New type.
49754
	(struct grub_efi_block_io_media): New structure.
49755
	(grub_efi_block_io_media_t): New type.
49756
	(struct grub_efi_block_io): New structure.
49757
	(grub_efi_block_io_t): New type.
49758
49759
	* include/grub/misc.h (grub_stop): Removed.
49760
	(grub_exit): New prototype.
49761
	(grub_abort): Likewise.
49762
49763
	* include/grub/disk.h (enum grub_disk_dev_id): Added
49764
	GRUB_DISK_DEVICE_EFIDISK_ID.
49765
49766
	* conf/i386-efi.rmk (kernel_mod_SOURCES): Added
49767
	disk/efi/efidisk.c.
49768
	(kernel_syms.lst): Remove the target if an error occurs.
49769
49770
2006-04-22  Yoshinori K. Okuji  <okuji@enbug.org>
49771
49772
	* kern/misc.c (grub_lltoa): Rewritten the decimal conversion part,
49773
	as it was simply too buggy.
49774
49775
2006-04-21  Yoshinori K. Okuji  <okuji@enbug.org>
49776
49777
	* kern/misc.c (grub_lltoa): New function.
49778
	(grub_vsprintf): Added support for the long long suffix,
49779
	i.e. "ll".
49780
49781
2006-04-20  Hollis Blanchard  <hollis@penguinppc.org>
49782
49783
	* Makefile.in (LDFLAGS): Add variable.
49784
	(LD): Remove variable.
49785
	* configure.ac: Add -m32 to LDFLAGS.
49786
	* genmk.rb (PModule#rule): Use $(CC) instead of $(LD).
49787
	* conf/powerpc-ieee1275.rmk (COMMON_LDFLAGS): Add variable.
49788
	(grubof_LDFLAGS): Use $(COMMON_LDFLAGS).
49789
	(_linux_mod_LDFLAGS, linux_mod_LDFLAGS, normal_mod_LDFLAGS,
49790
	suspend_mod_LDFLAGS, reboot_mod_LDFLAGS, halt_mod_LDFLAGS): New
49791
	variables.
49792
	* conf/sparc64-ieee1275.rmk (COMMON_LDFLAGS): Add -nostdlib.
49793
	* conf/i386-pc.rmk (COMMON_LDFLAGS): Add -nostdlib.
49794
	* conf/i386-efi.rmk (COMMON_LDFLAGS): Add -nostdlib.
49795
49796
2006-04-20  Vesa Jaaskelainen  <chaac@nic.fi>
49797
49798
	* term/gfxterm.c (grub_gfxterm_getcharwidth): Fixed character
49799
	length for unknown glyph.
49800
49801
2006-04-20  Yoshinori K. Okuji  <okuji@enbug.org>
49802
49803
	Add support for pre-loaded modules into the EFI port.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49804
1.1.3 by Otavio Salvador
Import upstream version 1.94
49805
	* util/i386/efi/grub-mkimage.c (make_mods_section): Rewritten
49806
	completely. Accept one more argument DIR. The caller has changed.
49807
49808
	* kern/i386/efi/init.c (grub_arch_modules_addr): Removed.
49809
49810
	* kern/efi/efi.c: Include grub/efi/pe32.h and grub/kernel.h.
49811
	(grub_efi_loaded_image_guid): New variable.
49812
	(grub_efi_get_loaded_image): New function.
49813
	(grub_arch_modules_addr): Likewise.
49814
49815
	* include/grub/efi/efi.h (grub_efi_get_loaded_image): New
49816
	prototype.
49817
49818
	* include/grub/efi/api.h (GRUB_EFI_LOADED_IMAGE_GUID): New macro.
49819
	(struct grub_efi_loaded_image): New structure.
49820
	(grub_efi_loaded_image_t): New type.
49821
49822
2006-04-20  Yoshinori K. Okuji  <okuji@enbug.org>
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49823
1.1.3 by Otavio Salvador
Import upstream version 1.94
49824
	* loader/i386/pc/linux.c (grub_rescue_cmd_linux): Compare the file
49825
	size with GRUB_OS_AREA_SIZE as grub_size_t instead of
49826
	grub_ssize_t. Reported by Jeff Chua <jeff84@silk.corp.fedex.com>.
49827
49828
2006-04-19  Roger Leigh  <rleigh@whinlatter.ukfsn.org>
49829
49830
	* DISTLIST: Added `util/powerpc/ieee1275/grub-install.in'.
49831
49832
2006-04-19  Yoshinori K. Okuji  <okuji@enbug.org>
49833
49834
	* DISTLIST: Added include/grub/efi/console.h,
49835
	include/grub/efi/time.h, include/grub/i386/efi/kernel.h,
49836
	kern/efi/init.c, kern/efi/mm.c, and term/efi/console.c.
49837
49838
	* include/grub/efi/console.h: New file.
49839
	* include/grub/efi/time.h: Likewise.
49840
	* include/grub/i386/efi/kernel.h: Likewise.
49841
	* kern/efi/init.c: Likewise.
49842
	* kern/efi/mm.c: Likewise.
49843
	* term/efi/console.c: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
49844
1.1.3 by Otavio Salvador
Import upstream version 1.94
49845
	* kern/i386/efi/init.c: Do not include grub/machine/time.h.
49846
	(grub_stop): Removed.
49847
	(grub_get_rtc): Likewise.
49848
	(grub_machine_init): Simply call grub_efi_init.
49849
	(grub_machine_fini): Call grub_efi_fini.
49850
49851
	* kern/efi/efi.c: Include grub/machine/time.h and grub/term.h.
49852
	(grub_efi_output_string): Removed.
49853
	(grub_efi_stall): New function.
49854
	(grub_stop): Likewise.
49855
	(grub_get_rtc): Likewise.
49856
49857
	* include/grub/efi/efi.h (grub_efi_output_string): Removed.
49858
	(grub_efi_stall): New prototype.
49859
	(grub_efi_allocate_pages): Likewise.
49860
	(grub_efi_free_pages): Likewise.
49861
	(grub_efi_get_memory_map): Likewise.
49862
	(grub_efi_mm_init): Likewise.
49863
	(grub_efi_mm_fini): Likewise.
49864
	(grub_efi_init): Likewise.
49865
	(grub_efi_fini): Likewise.
49866
49867
	* include/grub/i386/efi/time.h: Do not include
49868
	grub/symbol.h. Include grub/efi/time.h.
49869
	(GRUB_TICKS_PER_SECOND): Removed.
49870
	(grub_get_rtc): Likewise.
49871
49872
	* include/grub/efi/api.h (struct grub_efi_memory_descriptor):
49873
	Added padding. The EFI spec is buggy.
49874
	(GRUB_EFI_BLACK): New macro.
49875
	(GRUB_EFI_BLUE): Likewise.
49876
	(GRUB_EFI_GREEN): Likewise.
49877
	(GRUB_EFI_CYAN): Likewise.
49878
	(GRUB_EFI_RED): Likewise.
49879
	(GRUB_EFI_MAGENTA): Likewise.
49880
	(GRUB_EFI_BROWN): Likewise.
49881
	(GRUB_EFI_LIGHTGRAY): Likewise.
49882
	(GRUB_EFI_BRIGHT): Likewise.
49883
	(GRUB_EFI_DARKGRAY): Likewise.
49884
	(GRUB_EFI_LIGHTBLUE): Likewise.
49885
	(GRUB_EFI_LIGHTGREEN): Likewise.
49886
	(GRUB_EFI_LIGHTCYAN): Likewise.
49887
	(GRUB_EFI_LIGHTRED): Likewise.
49888
	(GRUB_EFI_LIGHTMAGENTA): Likewise.
49889
	(GRUB_EFI_YELLOW): Likewise.
49890
	(GRUB_EFI_WHITE): Likewise.
49891
	(GRUB_EFI_BACKGROUND_BLACK): Likewise.
49892
	(GRUB_EFI_BACKGROUND_BLUE): Likewise.
49893
	(GRUB_EFI_BACKGROUND_GREEN): Likewise.
49894
	(GRUB_EFI_BACKGROUND_CYAN): Likewise.
49895
	(GRUB_EFI_BACKGROUND_RED): Likewise.
49896
	(GRUB_EFI_BACKGROUND_MAGENTA): Likewise.
49897
	(GRUB_EFI_BACKGROUND_BROWN): Likewise.
49898
	(GRUB_EFI_BACKGROUND_LIGHTGRAY): Likewise.
49899
	(GRUB_EFI_TEXT_ATTR): Likewise.
49900
49901
	* conf/i386-efi.rmk (kernel_mod_SOURCES): Added kern/efi/efi.c,
49902
	kern/efi/init.c, kern/efi/mm.c, and term/efi/console.c.
49903
	(kernel_mod_HEADERS): Added efi/time.h.
49904
49905
2006-04-18  Yoshinori K. Okuji  <okuji@enbug.org>
49906
49907
	* DISTLIST: Added conf/i386-efi.mk, conf/i386-efi.rmk,
49908
	include/grub/efi/api.h, include/grub/efi/console_control.h,
49909
	include/grub/efi/efi.h, include/grub/efi/pe32.h,
49910
	include/grub/i386/efi/time.h, kern/efi/efi.c,
49911
	kern/i386/efi/init.c, kern/i386/efi/startup.S,
49912
	and util/i386/efi/grub-mkimage.c.
49913
49914
	* Makefile.in (RMKFILES): Added i386-efi.rmk.
49915
49916
	* genmk.rb (PModule#rule): Do not export symbols if
49917
	#{prefix}_EXPORTS is set to "no".
49918
49919
	* conf/i386-efi.mk: New file.
49920
	* conf/i386-efi.rmk: Likewise.
49921
	* include/grub/efi/api.h: Likewise.
49922
	* include/grub/efi/console_control.h: Likewise.
49923
	* include/grub/efi/efi.h: Likewise.
49924
	* include/grub/efi/pe32.h: Likewise.
49925
	* include/grub/i386/efi/time.h: Likewise.
49926
	* kern/efi/efi.c: Likewise.
49927
	* kern/i386/efi/init.c: Likewise.
49928
	* kern/i386/efi/startup.S: Likewise.
49929
	* util/i386/efi/grub-mkimage.c: Likewise.
49930
49931
2006-04-17  Marco Gerards  <marco@gnu.org>
49932
49933
	* include/grub/script.h: Include <grub/parser.h> and
49934
	"grub_script.tab.h".
49935
	(struct grub_lexer_param): New struct.
49936
	(struct grub_parser_param): Likewise.
49937
	(grub_script_create_arglist): Pass the state in an argument.
49938
	(grub_script_add_arglist): Likewise.
49939
	(grub_script_create_cmdline): Likewise.
49940
	(grub_script_create_cmdblock): Likewise.
49941
	(grub_script_create_cmdif): Likewise.
49942
	(grub_script_create_cmdmenu): Likewise.
49943
	(grub_script_add_cmd): Likewise.
49944
	(grub_script_arg_add): Likewise.
49945
	(grub_script_lexer_ref): Likewise.
49946
	(grub_script_lexer_deref): Likewise.
49947
	(grub_script_lexer_record_start): Likewise.
49948
	(grub_script_lexer_record_stop): Likewise.
49949
	(grub_script_mem_record): Likewise.
49950
	(grub_script_mem_record_stop): Likewise.
49951
	(grub_script_malloc): Likewise.
49952
	(grub_script_yylex): Likewise.
49953
	(grub_script_yyparse): Likewise.
49954
	(grub_script_yyerror): Likewise.
49955
	(grub_script_yylex): Likewise.
49956
	(grub_script_lexer_init): Return the state.
49957
49958
	* normal/lexer.c (grub_script_lexer_state): Removed variable.
49959
	(grub_script_lexer_done): Likewise.
49960
	(grub_script_lexer_getline): Likewise.
49961
	(grub_script_lexer_refs): Likewise.
49962
	(script): Likewise.
49963
	(newscript): Likewise.
49964
	(record): Likewise.
49965
	(recording): Likewise.
49966
	(recordpos): Likewise.
49967
	(recordlen): Likewise.
49968
	(grub_script_lexer_init): Return the state instead of setting
49969
	global variables.
49970
	(grub_script_lexer_ref): Use the newly added argument for state
49971
	instead of globals.
49972
	(grub_script_lexer_deref): Likewise.
49973
	(grub_script_lexer_record_start): Likewise.
49974
	(grub_script_lexer_record_stop): Likewise.
49975
	(recordchar): Likewise.
49976
	(nextchar): Likewise.
49977
	(grub_script_yylex2): Likewise.
49978
	(grub_script_yylex): Likewise.
49979
	(grub_script_yyerror): Likewise.
49980
49981
	* normal/parser.y (func_mem): Removed variable.
49982
	(menu_entry): Likewise.
49983
	(err): Likewise.
49984
	(%lex-param): New parser option.
49985
	(%parse-param): Likewise.
49986
	(script): Always return the AST.
49987
	(argument): Pass the state around.
49988
	(arguments): Likewise.
49989
	(grubcmd): Likewise.
49990
	(commands): Likewise.
49991
	(function): Likewise.
49992
	(menuentry): Likewise.
49993
	(if_statement): Likewise.
49994
	(if): Likewise.
49995
49996
	* normal/script.c (grub_script_memused): Removed variable.
49997
	(grub_script_parsed): Likewise.
49998
	(grub_script_malloc): Added a state argument.  Use that instead of
49999
	global variables.
50000
	(grub_script_mem_record): Likewise.
50001
	(grub_script_mem_record_stop): Likewise.
50002
	(grub_script_arg_add): Likewise.
50003
	(grub_script_add_arglist): Likewise.
50004
	(grub_script_create_cmdline): Likewise.
50005
	(grub_script_create_cmdif): Likewise.
50006
	(grub_script_create_cmdmenu): Likewise.
50007
	(grub_script_add_cmd): Likewise.
50008
	(grub_script_parse): Setup the state before calling the parser.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50009
1.1.3 by Otavio Salvador
Import upstream version 1.94
50010
2006-04-16  Marco Gerards  <marco@gnu.org>
50011
50012
	* normal/command.c (grub_command_init): Remove the title command.
50013
50014
	* normal/lexer.c (grub_script_yylex): Renamed from this...
50015
	(grub_script_yylex2): ... to this.
50016
	(grub_script_yylex): New function.  Temporary
50017
	introduced to filter some tokens.
50018
	(grub_script_yyerror): Print a newline.
50019
50020
	* normal/main.c (read_config_file): Output information about the
50021
	lines that contain errors.  Wait for a key after all lines have
50022
	been processed.  Don't return an empty menu.
50023
50024
	* normal/parser.y (func_mem): Don't initialize.
50025
	(menu_entry): Likewise.
50026
	(err): New variable.
50027
	(script): Don't return anything when an error was encountered.
50028
	(ws, returns): Removed rules.
50029
	(argument): Disabled concatenated variable support.
50030
	(arguments): Remove explicit separators.
50031
	(grubcmd): Likewise.
50032
	(function): Likewise.
50033
	(menuentry): Likewise.
50034
	(if): Likewise.
50035
	(commands): Likewise.  Add error handling.
50036
50037
	* normal/script.c (grub_script_create_cmdline): If
50038
	`grub_script_parsed' is 0, assume the parser encountered an error.
50039
50040
2006-04-02  Yoshinori K. Okuji  <okuji@enbug.org>
50041
50042
	* configure.ac: Add support for EFI. Fix the typo
50043
	BUILD_LDDFLAGS. Restore the LDFLAGS after testing.
50044
50045
2006-04-01  Vesa Jaaskelainen  <chaac@nic.fi>
50046
50047
	* util/unifont2pff.rb: Removed unnecessary byte ordering.  Now
50048
	foreign multibyte characters should be shown correctly.
50049
50050
2006-04-01  Vesa Jaaskelainen  <chaac@nic.fi>
50051
50052
	* normal/main.c (grub_normal_menu_addentry): Fixed menu size
50053
	calculation.
50054
	(read_config_file): Made it to close file before returning.
50055
50056
2006-03-31  Vesa Jaaskelainen  <chaac@nic.fi>
50057
50058
	* DISTLIST: Added include/grub/i386/pc/vbeblit.h,
50059
	include/grub/i386/pc/vbefill.h, video/i386/pc/vbeblit.c,
50060
	video/i386/pc/vbefill.c.
50061
50062
	* conf/i386-pc.rmk (vbe_mod_SOURCES): Added video/i386/pc/vbeblit.c,
50063
	video/i386/pc/vbefill.c.
50064
50065
	* include/grub/video.h (grub_video_blit_format): New enum.
50066
	(grub_video_mode_info): Added new member blit_format.
50067
	(grub_video_get_blit_format): New function prototype.
50068
50069
	* include/grub/i386/pc/vbe.h (grub_video_vbe_get_video_ptr): New
50070
	function prototype.
50071
	(grub_video_vbe_map_rgb): Likewise.
50072
	(grub_video_vbe_unmap_color): Likewise.
50073
50074
	* include/grub/i386/pc/vbeblit.h: New file.
50075
50076
	* include/grub/i386/pc/vbefill.h: New file.
50077
50078
	* video/video.c (grub_video_get_blit_format): New function.
50079
	(grub_video_vbe_get_video_ptr): Re-declared as non-static.
50080
	(grub_video_vbe_map_rgb): Likewise.
50081
	(grub_video_vbe_unmap_color): Likewise.
50082
50083
	* video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Changed to use more
50084
	optimized fills.
50085
	(grub_video_vbe_blit_render_target): Changed to use more optimized
50086
	blits.
50087
	(grub_video_vbe_setup): Added detection for optimized settings.
50088
	(grub_video_vbe_create_render_target): Likewise.
50089
50090
	* video/i386/pc/vbeblit.c: New file.
50091
50092
	* video/i386/pc/vbefill.c: New file.
50093
50094
2006-03-30  Vesa Jaaskelainen  <chaac@nic.fi>
50095
50096
	* font/manager.c (grub_font_get_glyph): Removed font fixup from
50097
	here...
50098
50099
	* util/unifont2pff.rb: ... and moved it to here.  Improved argument
50100
	parsing to support both hex and dec ranges.  If filename was missing
50101
	show usage information.
50102
50103
2006-03-14  Vesa Jaaskelainen  <chaac@nic.fi>
50104
50105
	* DISTLIST: Added include/grub/video.h, term/gfxterm.c,
50106
	video/video.c, commands/videotest.c.  Removed term/i386/pc/vesafb.c.
50107
50108
	* conf/i386-pc.rmk (pkgdata_MODULES): Added video.mod,
50109
	gfxterm.mod, videotest.mod.  Removed vga.mod, vesafb.mod.
50110
	(video_mod_SOURCES): Added.
50111
	(video_mod_CFLAGS): Likewise.
50112
	(video_mod_LDFLAGS): Likewise.
50113
	(gfxterm_mod_SOURCES): Likewise.
50114
	(gfxterm_mod_CFLAGS): Likewise.
50115
	(gfxterm_mod_LDFLAGS): Likewise.
50116
	(videotest_mod_SOURCES): Likewise.
50117
	(videotest_mod_CFLAGS): Likewise.
50118
	(videotest_mod_LDFLAGS): Likewise.
50119
	(vesafb_mod_SOURCES): Removed.
50120
	(vesafb_mod_CFLAGS): Likewise.
50121
	(vesafb_mod_LDFLAGS): Likewise.
50122
	(vga_mod_SOURCES): Likewise.
50123
	(vga_mod_CFLAGS): Likewise.
50124
	(vga_mod_LDFLAGS): Likewise.
50125
50126
	* commands/videotest.c: New file.
50127
50128
	* font/manager.c (fill_with_default_glyph): Modified to use
50129
	grub_font_glyph.
50130
	(grub_font_get_glyph): Likewise.
50131
	(fontmanager): Renamed from this...
50132
	(font_manager): ... to this.
50133
50134
	* include/grub/font.h (grub_font_glyph): Added new structure.
50135
	(grub_font_get_glyph): Modified to use grub_font_glyph.
50136
50137
	* include/grub/misc.h (grub_abs): Added as inline function.
50138
50139
	* include/grub/video.h: New file.
50140
50141
	* include/grub/i386/pc/vbe.h (GRUB_VBE_STATUS_OK): New macro.
50142
	(GRUB_VBE_MEMORY_MODEL_PACKED_PIXEL): Likewise.
50143
	(GRUB_VBE_MEMORY_MODEL_DIRECT_COLOR): Likewise.
50144
	(grub_vbe_get_controller_info): Renamed from this...
50145
	(grub_vbe_bios_get_controller_info): ... to this.
50146
	(grub_vbe_get_mode_info): Renamed from this...
50147
	(grub_vbe_bios_get_mode_info): ... to this.
50148
	(grub_vbe_set_mode): Renamed from this...
50149
	(grub_vbe_bios_set_mode): ... to this.
50150
	(grub_vbe_get_mode): Renamed from this...
50151
	(grub_vbe_bios_get_mode): ... to this.
50152
	(grub_vbe_set_memory_window): Renamed from this...
50153
	(grub_vbe_bios_set_memory_window): ... to this.
50154
	(grub_vbe_get_memory_window): Renamed from this...
50155
	(grub_vbe_bios_get_memory_window): ... to this.
50156
	(grub_vbe_set_scanline_length): Renamed from this...
50157
	(grub_vbe_set_scanline_length): ... to this.
50158
	(grub_vbe_get_scanline_length): Renamed from this...
50159
	(grub_vbe_bios_get_scanline_length): ... to this.
50160
	(grub_vbe_set_display_start): Renamed from this...
50161
	(grub_vbe_bios_set_display_start): ... to this.
50162
	(grub_vbe_get_display_start): Renamed from this...
50163
	(grub_vbe_bios_get_display_start): ... to this.
50164
	(grub_vbe_set_palette_data): Renamed from this...
50165
	(grub_vbe_bios_set_palette_data): ... to this.
50166
	(grub_vbe_set_pixel_rgb): Removed.
50167
	(grub_vbe_set_pixel_index): Likewise.
50168
50169
	* kern/i386/pc/startup.S (grub_vbe_get_controller_info): Renamed
50170
	from this...
50171
	(grub_vbe_bios_get_controller_info): ... to this.
50172
	(grub_vbe_get_mode_info): Renamed from this...
50173
	(grub_vbe_bios_get_mode_info): ... to this.
50174
	(grub_vbe_set_mode): Renamed from this...
50175
	(grub_vbe_bios_set_mode): ... to this.
50176
	(grub_vbe_get_mode): Renamed from this...
50177
	(grub_vbe_bios_get_mode): ... to this.
50178
	(grub_vbe_set_memory_window): Renamed from this...
50179
	(grub_vbe_bios_set_memory_window): ... to this.
50180
	(grub_vbe_get_memory_window): Renamed from this...
50181
	(grub_vbe_bios_get_memory_window): ... to this.
50182
	(grub_vbe_set_scanline_length): Renamed from this...
50183
	(grub_vbe_set_scanline_length): ... to this.
50184
	(grub_vbe_get_scanline_length): Renamed from this...
50185
	(grub_vbe_bios_get_scanline_length): ... to this.
50186
	(grub_vbe_set_display_start): Renamed from this...
50187
	(grub_vbe_bios_set_display_start): ... to this.
50188
	(grub_vbe_get_display_start): Renamed from this...
50189
	(grub_vbe_bios_get_display_start): ... to this.
50190
	(grub_vbe_set_palette_data): Renamed from this...
50191
	(grub_vbe_bios_set_palette_data): ... to this.
50192
	(grub_vbe_bios_get_controller_info): Fixed problem with registers
50193
	getting corrupted after calling it.  Added more pushes and pops.
50194
	(grub_vbe_bios_set_mode): Likewise.
50195
	(grub_vbe_bios_get_mode): Likewise.
50196
	(grub_vbe_bios_get_memory_window): Likewise.
50197
	(grub_vbe_bios_set_scanline_length): Likewise.
50198
	(grub_vbe_bios_get_scanline_length): Likewise.
50199
	(grub_vbe_bios_get_display_start): Likewise.
50200
	(grub_vbe_bios_set_palette_data): Likewise.
50201
50202
	* normal/cmdline.c (cl_set_pos): Refresh the screen.
50203
	(cl_insert): Likewise.
50204
	(cl_delete): Likewise.
50205
50206
	* term/gfxterm.c: New file.
50207
50208
	* term/i386/pc/vesafb.c: Removed file.
50209
50210
	* video/video.c: New file.
50211
50212
	* video/i386/pc/vbe.c (real2pm): Added new function.
50213
	(grub_video_vbe_draw_pixel): Likewise.
50214
	(grub_video_vbe_get_video_ptr): Likewise.
50215
	(grub_video_vbe_get_pixel): Likewise
50216
	(grub_video_vbe_init): Likewise.
50217
	(grub_video_vbe_fini): Likewise.
50218
	(grub_video_vbe_setup): Likewise.
50219
	(grub_video_vbe_get_info): Likewise.
50220
	(grub_video_vbe_set_palette): Likewise.
50221
	(grub_video_vbe_get_palette): Likewise.
50222
	(grub_video_vbe_set_viewport): Likewise.
50223
	(grub_video_vbe_get_viewport): Likewise.
50224
	(grub_video_vbe_map_color): Likewise.
50225
	(grub_video_vbe_map_rgb): Likewise.
50226
	(grub_video_vbe_map_rgba): Likewise.
50227
	(grub_video_vbe_unmap_color): Likewise.
50228
	(grub_video_vbe_fill_rect): Likewise.
50229
	(grub_video_vbe_blit_glyph): Likewise.
50230
	(grub_video_vbe_blit_bitmap): Likewise.
50231
	(grub_video_vbe_blit_render_target): Likewise.
50232
	(grub_video_vbe_scroll): Likewise.
50233
	(grub_video_vbe_swap_buffers): Likewise.
50234
	(grub_video_vbe_create_render_target): Likewise.
50235
	(grub_video_vbe_delete_render_target): Likewise.
50236
	(grub_video_vbe_set_active_render_target): Likewise.
50237
	(grub_vbe_set_pixel_rgb): Remove function.
50238
	(grub_vbe_set_pixel_index): Likewise.
50239
	(index_color_mode): Remove static variable.
50240
	(active_mode): Likewise.
50241
	(framebuffer): Likewise.
50242
	(bytes_per_scan_line): Likewise.
50243
	(grub_video_vbe_adapter): Added new static variable.
50244
	(framebuffer): Likewise.
50245
	(render_target): Likewise.
50246
	(initial_mode): Likewise.
50247
	(mode_in_use): Likewise.
50248
	(mode_list): Likewise.
50249
50250
2006-03-10  Marco Gerards  <marco@gnu.org>
50251
50252
	* configure.ac (AC_INIT): Bumped to 1.93.
50253
50254
	* DISTLIST: Added `include/grub/hfs.h'.
50255
50256
2006-02-01  Yoshinori K. Okuji  <okuji@enbug.org>
50257
50258
	* boot/i386/pc/boot.S (general_error): Before looping, try INT
50259
	18H, which might help the BIOS falling back to next boot media.
50260
50261
2006-01-25  Yoshinori K. Okuji  <okuji@enbug.org>
50262
50263
	* util/i386/pc/grub-install.in: Escape a backslash. Reported by
50264
	Poe Chen <poe.poechen@gmail.com>.
50265
50266
2006-01-17  Marco Gerards  <marco@gnu.org>
50267
50268
	* include/grub/normal.h: Include <grub/script.h>.
50269
	(grub_command_list): Removed struct.
50270
	(grub_command_list_t): Removed type.
50271
	(grub_menu_entry): Remove members `num' and `command_list'.  Add
50272
	members `commands' and `sourcecode'.
50273
	* include/grub/script.h: Add inclusion guards.
50274
	(grub_script_cmd_menuentry): New struct.
50275
	(grub_script_execute_menuentry): New prototype.
50276
	(grub_script_lexer_record_start): Likewise.
50277
	(grub_script_lexer_record_stop): Likewise.
50278
	* normal/execute.c (grub_script_execute_menuentry): New function.
50279
	* normal/lexer.c (record, recording, recordpos, recordlen): New
50280
	variables.
50281
	(grub_script_lexer_record_start): New function.
50282
	(grub_script_lexer_record_stop): Likewise.
50283
	(recordchar): Likewise.
50284
	(nextchar): Likewise.
50285
	(grub_script_yylex): Use `nextchar' to fetch new characters.  Use
50286
	2048 as the buffer size.  Add the tokens `menuentry' and `@'.
50287
	* normal/main.c: Include <grub/parser.h> and <grub/script.h>
50288
	(current_menu): New variable.
50289
	(free_menu): Mainly rewritten.
50290
	(grub_normal_menu_addentry): New function.
50291
	(read_config_file): Rewritten.
50292
	* normal/menu.c (run_menu_entry): Mainly rewritten.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50293
	* normal/menu_entry.c (make_screen): Rewritten the code to insert
1.1.3 by Otavio Salvador
Import upstream version 1.94
50294
	the menu entry.
50295
	(run): Mainly rewritten.
50296
	* normal/parser.y (menu_entry): New variable.
50297
	(GRUB_PARSER_TOKEN_MENUENTRY): New token.
50298
	(menuentry): New rule.
50299
	(command): Add `menuentry'.
50300
	(if_statement): Allow additional returns before `fi'.
50301
	* normal/script.c (grub_script_create_cmdmenu): New function.
50302
50303
2006-01-03  Marco Gerards  <marco@gnu.org>
50304
50305
	* INSTALL: GNU Bison is required.
50306
	* configure.ac: Rewritten the test to detect Bison.
50307
	* Makefile.in (YACC): New variable.  Reported by Xun Sun
50308
	<xun.sun.cn@gmail.com>.
50309
50310
2006-01-03  Marco Gerards  <marco@gnu.org>
50311
50312
	* fs/hfsplus.c (grub_hfsplus_read_block): Convert the offset of
50313
	the HFS+ filesystem to filesystem blocks.
50314
	(grub_hfsplus_iterate_dir): Cast the `fileinfo' assignment so a
50315
	GCC warning is silenced.
50316
50317
2006-01-03  Marco Gerards  <marco@gnu.org>
50318
50319
	* partmap/apple.c (apple_partition_map_iterate): Convert the data
50320
	read from disk from big	endian to host byte order.
50321
50322
2006-01-03  Hollis Blanchard  <hollis@penguinppc.org>
50323
50324
	* fs/hfs.c: Include <grub/hfs.h>.  Added reference to the official
50325
	documentation.
50326
	(GRUB_HFS_EMBED_HFSPLUS_SIG): New macro.
50327
	(grub_hfs_mount): Grammar fix in error. Make sure this is not an
50328
	embedded HFS+ filesystem.
50329
	(GRUB_HFS_MAGIC, grub_hfs_extent, grub_hfs_datarecord_t)
50330
	(grub_hfs_sblock): Move from here...
50331
	* include/grub/hfs.h: To here...  New file.
50332
	* fs/hfsplus.c: Include <grub/hfs.h>.  Added reference to the official
50333
	documentation.
50334
	(GRUB_HFSPLUS_MAGIC, GRUB_HFSPLUSX_MAGIC, GRUB_HFSPLUS_SBLOCK):
50335
	New macros.
50336
	(grub_hfsplus_volheader): Change type of member `magic' to
50337
	`grub_uint16_t'.
50338
	(grub_hfsplus_data): Add new member `embedded_offset'.
50339
	(grub_hfsplus_read_block): Add the HFS+ wrapper offset to the
50340
	returned block.
50341
	(grub_hfsplus_mount): Read the HFS+ wrapper if it exists.
50342
	Calculate the offset.
50343
50344
2005-12-25  Yoshinori K. Okuji  <okuji@enbug.org>
50345
50346
	* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_DRP_ADDR):
50347
	Removed.
50348
	(GRUB_BOOT_MACHINE_DRP_SIZE): Likewise.
50349
1.1.2 by Otavio Salvador
Import upstream version 1.92
50350
2005-12-25  Yoshinori K. Okuji  <okuji@enbug.org>
50351
50352
	* kern/env.c (grub_env_set): Check if ENV->VALUE instead of
50353
	ENV->NAME is NULL after	allocating ENV->VALUE.
50354
50355
2005-12-25  Marco Gerards  <marco@gnu.org>
50356
50357
	* kern/env.c (grub_env_set): Rewritten the error handling code.
50358
50359
2005-12-25  Yoshinori K. Okuji  <okuji@enbug.org>
50360
50361
	* geninit.sh: Made more robust, and more portable.
50362
50363
2005-12-25  Marco Gerards  <marco@gnu.org>
50364
50365
	Add support for Apple HFS+ filesystems.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50366
1.1.2 by Otavio Salvador
Import upstream version 1.92
50367
	* fs/hfsplus.c: New file.
50368
50369
	* DISTLIST: Added `fs/hfsplus.c'.
50370
50371
	* conf/common.rmk (pkgdata_MODULES): Add `hfsplus.mod'.
50372
	(hfsplus_mod_SOURCES): New variable.
50373
	(hfsplus_mod_CFLAGS): Likewise.
50374
	(hfsplus_mod_LDFLAGS): Likewise.
50375
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/hfsplus.c'.
50376
	(grub_setup_SOURCES): Likewise.
50377
	(grub_mkdevicemap_SOURCES): Likewise.
50378
	(grub_emu_SOURCES): Likewise.
50379
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
50380
50381
	* fs/fshelp.c (grub_fshelp_log2blksize): New function.
50382
50383
	* include/grub/fshelp.h (grub_fshelp_log2blksize): new prototype.
50384
50385
2005-12-25  Yoshinori K. Okuji  <okuji@enbug.org>
50386
50387
	* DISTLIST: Added geninitheader.sh, geninit.sh, commands/test.c,
50388
	commands/i386/pc/play.c, conf/common.mk, conf/common.rmk,
50389
	include/grub/parser.h, include/grub/script.h, kern/parser.c,
50390
	kern/sparc64/cache.S, normal/execute.c, normal/function.c,
50391
	normal/lexer.c, normal/parser.y, normal/script.c, and
50392
	partmap/gpt.c.
50393
	Removed kern/sparc64/cache.c.
50394
50395
	* conf/common.rmk (DISTCLEANFILES): Added grub_script.tab.c,
50396
	grub_script.tab.h, grub_modules_init.lst, grub_modules_init.h,
50397
	grub_emu_init.c.
50398
50399
	* configure.ac (AC_INIT): Bumped to 1.92.
50400
50401
2005-12-24  Vesa Jaaskelainen  <chaac@nic.fi>
50402
50403
	* kern/err.c (grub_error_push): Added new function to support error
50404
	stacks.
50405
	(grub_error_pop): Likewise.
50406
	(grub_error_stack_items): New local variable to support error stacks.
50407
	(grub_error_stack_pos): Likewise.
50408
	(grub_error_stack_assert): Likewise.
50409
	(GRUB_ERROR_STACK_SIZE): Added new define to configure maximum error
50410
	stack depth.
50411
	(grub_print_error): Added support to print errors from error stack.
50412
50413
	* include/grub/err.h (grub_error_push): Added function prototype.
50414
	(grub_error_pop): Likewise.
50415
50416
2005-12-09  Hollis Blanchard  <hollis@penguinppc.org>
50417
50418
	* configure.ac: Accept `powerpc64' as host_cpu.
50419
	(amd64): Rename to `biarch32'.
50420
50421
	* kern/powerpc/cache.S (grub_arch_sync_caches): Handle
50422
	non-cacheline-aligned addresses.
50423
50424
	* kern/dl.c (grub_dl_load_core): Add grub_dprintf messages.
50425
	(grub_dl_flush_cache): Likewise.  Only call `grub_arch_sync_caches'
50426
	if `size' is non-zero.
50427
50428
2005-12-03  Marco Gerards  <mgerards@xs4all.nl>
50429
50430
	* conf/common.rmk (grub_modules_init.lst): Use `-printf "%P\n"'
50431
	and `cd' to make sure the filename is not prefixed with a
50432
	directory name.
50433
	(pkgdata_MODULES): Add `gpt.mod'.
50434
	(gpt_mod_SOURCES): New variable.
50435
	(gpt_mod_CFLAGS): Likewise.
50436
	(gpt_mod_LDFLAGS): Likewise.
50437
50438
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `partmap/gpt.c'.
50439
50440
	* include/grub/pc_partition.h (GRUB_PC_PARTITION_TYPE_GPT_DISK):
50441
	New macro.
50442
50443
	* partmap/gpt.c: New file.
50444
50445
	* partmap/pc.c (pc_partition_map_iterate): Don't continue when a
50446
	GPT partition map is detected.
50447
50448
2005-12-03  Vincent Pelletier  <subdino2004@yahoo.fr>
50449
50450
	* commands/i386/pc/play.c: New file.
50451
	* conf/i386-pc.rmk (pkgdata_MODULES): Added play.mod.
50452
	(play_mod_SOURCES, play_mod_CFLAGS, play_mod_LDFLAGS): New
50453
	macros.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50454
1.1.2 by Otavio Salvador
Import upstream version 1.92
50455
2005-11-27  Marco Gerards  <mgerards@xs4all.nl>
50456
50457
	* include/grub/dl.h (GRUB_MOD_INIT): Use `__attribute__
50458
	((unused))' to silence gcc warning.
50459
50460
2005-11-26  Hollis Blanchard  <hollis@penguinppc.org>
50461
50462
	* configure.ac: Correct `AC_PROG_YACC' test.
50463
50464
2005-11-22  Hollis Blanchard  <hollis@penguinppc.org>
50465
50466
	* util/powerpc/ieee1275/grub-install.in: Run the mount point
50467
	check before installing files.
50468
50469
2005-11-22  Mike Small  <smallm@panix.com>
50470
50471
	* util/powerpc/ieee1275/grub-install.in (grubdir): Fixed partition
50472
	number regex so multidigit numbers are recognized correctly.
50473
50474
2005-11-22  Mike Small  <smallm@panix.com>
50475
50476
	* loader/powerpc/ieee1275/linux.c (grub_rescue_cmd_linux): Add a
50477
	debugging message before attempting to claim memory.
50478
	(grub_rescue_cmd_initrd): Add a claim debugging message and try
50479
	multiple addresses in case of failure.
50480
50481
2005-11-22  Hollis Blanchard  <hollis@penguinppc.org>
50482
50483
	* term/tparm.c (get_space): Remove empty `if' statement.
50484
50485
	* fs/ufs.c (grub_ufs_find_file): Remove `grub_le_to_cpu32'.
50486
50487
	* kern/parser.c (check_varstate): Rename `state' to 's'.
50488
50489
2005-11-22  Hollis Blanchard  <hollis@penguinppc.org>
50490
50491
	* partmap/acorn.c: Change `unsigned' to `unsigned int'.  Move all
50492
	variable definitions to the beginning of each function.  Sort stack
50493
	variables by size.
50494
	(find): Rename to `acorn_partition_map_find'.  Cast `grub_disk_read'
50495
	`buf' argument to `char *'.
50496
50497
2005-11-22  Hollis Blanchard  <hollis@penguinppc.org>
50498
50499
	* conf/powerpc-ieee1275.rmk: Include conf/common.mk.
50500
	(pkgdata_MODULES): Removed fshelp.mod, fat.mod, ext2.mod, ufs.mod,
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50501
	minix.mod, hfs.mod, jfs.mod, xfs.mod, affs.mod, sfs.mod,
1.1.2 by Otavio Salvador
Import upstream version 1.92
50502
	hello.mod, boot.mod, terminal.mod, ls.mod, cmp.mod, cat.mod,
50503
	help.mod, font.mod, terminfo.mod, amiga.mod, apple.mod, pc.mod,
50504
	sun.mod, acorn.mod, loopback.mod, default.mod, timeout.mod,
50505
	configfile.mod, search.mod, gzio.mod and test.mod.
50506
	(symlist.c, grub_script.tab.c, grub_script.tab.h, kernel_syms.lst)
50507
	(grub_modules_init.lst, grub_modules_init.h, grub_emu_init.c)
50508
	(fshelp_mod_SOURCES, fshelp_mod_CFLAGS, fshelp_mod_LDFLAGS)
50509
	(fat_mod_SOURCES, fat_mod_CFLAGS, fat_mod_LDFLAGS)
50510
	(ext2_mod_SOURCES, ext2_mod_CFLAGS, ext2_mod_LDFLAGS)
50511
	(ufs_mod_SOURCES, ufs_mod_CFLAGS, ufs_mod_LDFLAGS)
50512
	(minix_mod_SOURCES, minix_mod_CFLAGS, minix_mod_LDFLAGS)
50513
	(hfs_mod_SOURCES, hfs_mod_CFLAGS, hfs_mod_LDFLAGS, jfs_mod_SOURCES)
50514
	(jfs_mod_CFLAGS, jfs_mod_LDFLAGS, iso9660_mod_SOURCES)
50515
	(iso9660_mod_CFLAGS, iso9660_mod_LDFLAGS, xfs_mod_SOURCES)
50516
	(xfs_mod_CFLAGS, xfs_mod_LDFLAGS, affs_mod_SOURCES)
50517
	(affs_mod_CFLAGS, affs_mod_LDFLAGS, sfs_mod_SOURCES)
50518
	(sfs_mod_CFLAGS, sfs_mod_LDFLAGS, hello_mod_SOURCES)
50519
	(hello_mod_CFLAGS, hello_mod_LDFLAGS, boot_mod_SOURCES)
50520
	(boot_mod_CFLAGS, boot_mod_LDFLAGS, terminal_mod_SOURCES)
50521
	(terminal_mod_CFLAGS, terminal_mod_LDFLAGS, ls_mod_SOURCES)
50522
	(ls_mod_CFLAGS, ls_mod_LDFLAGS, cmp_mod_SOURCES, cmp_mod_CFLAGS)
50523
	(cmp_mod_LDFLAGS, cat_mod_SOURCES, cat_mod_CFLAGS, cat_mod_LDFLAGS)
50524
	(help_mod_SOURCES, help_mod_CFLAGS, help_mod_LDFLAGS)
50525
	(font_mod_SOURCES, font_mod_CFLAGS, font_mod_LDFLAGS)
50526
	(terminfo_mod_SOURCES, terminfo_mod_CFLAGS, terminfo_mod_LDFLAGS)
50527
	(amiga_mod_SOURCES, amiga_mod_CFLAGS, amiga_mod_LDFLAGS)
50528
	(apple_mod_SOURCES, apple_mod_CFLAGS, apple_mod_LDFLAG): Removed.
50529
50530
	* conf/common.mk (grub_modules_init.lst): Use `find' instead of
50531
	`grep --include'.
50532
	(pkgdata_MODULES): Add test.mod.
50533
50534
2005-11-18  Timothy Baldwin  <T.E.Baldwin99@members.leeds.ac.uk>
50535
50536
	* genmk.rb: Fixed list rules moved to Makefile.in.  Recognise
50537
	appending to variables with "+=".
50538
	(PModule): Use full pathname to generate *.lst filenames.
50539
50540
	* Makefile.in: Fixed list rules moved from genmk.rb.
50541
	(.DELETE_ON_ERROR): New special target.
50542
	(RMKFILES): Add common.rmk and sparc64-ieee1275.rmk.
50543
50544
	* conf/i386-pc.rmk: Include conf/common.mk.
50545
	(pkgdata_MODULES): Removed fshelp.mod, fat.mod, ext2.mod, ufs.mod,
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50546
	minix.mod, hfs.mod, jfs.mod, xfs.mod, affs.mod, sfs.mod,
1.1.2 by Otavio Salvador
Import upstream version 1.92
50547
	hello.mod, boot.mod, terminal.mod, ls.mod, cmp.mod, cat.mod,
50548
	help.mod, font.mod, terminfo.mod, amiga.mod, apple.mod, pc.mod,
50549
	sun.mod, acorn.mod, loopback.mod, default.mod, timeout.mod,
50550
	configfile.mod, search.mod, gzio.mod and test.mod.
50551
	(symlist.c, grub_script.tab.c, grub_script.tab.h, kernel_syms.lst)
50552
	(grub_modules_init.lst, grub_modules_init.h, grub_emu_init.c)
50553
	(fshelp_mod_SOURCES, fshelp_mod_CFLAGS, fshelp_mod_LDFLAGS)
50554
	(fat_mod_SOURCES, fat_mod_CFLAGS, fat_mod_LDFLAGS)
50555
	(ext2_mod_SOURCES, ext2_mod_CFLAGS, ext2_mod_LDFLAGS)
50556
	(ufs_mod_SOURCES, ufs_mod_CFLAGS, ufs_mod_LDFLAGS)
50557
	(minix_mod_SOURCES, minix_mod_CFLAGS, minix_mod_LDFLAGS)
50558
	(hfs_mod_SOURCES, hfs_mod_CFLAGS, hfs_mod_LDFLAGS, jfs_mod_SOURCES)
50559
	(jfs_mod_CFLAGS, jfs_mod_LDFLAGS, iso9660_mod_SOURCES)
50560
	(iso9660_mod_CFLAGS, iso9660_mod_LDFLAGS, xfs_mod_SOURCES)
50561
	(xfs_mod_CFLAGS, xfs_mod_LDFLAGS, affs_mod_SOURCES)
50562
	(affs_mod_CFLAGS, affs_mod_LDFLAGS, sfs_mod_SOURCES)
50563
	(sfs_mod_CFLAGS, sfs_mod_LDFLAGS, hello_mod_SOURCES)
50564
	(hello_mod_CFLAGS, hello_mod_LDFLAGS, boot_mod_SOURCES)
50565
	(boot_mod_CFLAGS, boot_mod_LDFLAGS, terminal_mod_SOURCES)
50566
	(terminal_mod_CFLAGS, terminal_mod_LDFLAGS, ls_mod_SOURCES)
50567
	(ls_mod_CFLAGS, ls_mod_LDFLAGS, cmp_mod_SOURCES, cmp_mod_CFLAGS)
50568
	(cmp_mod_LDFLAGS, cat_mod_SOURCES, cat_mod_CFLAGS, cat_mod_LDFLAGS)
50569
	(help_mod_SOURCES, help_mod_CFLAGS, help_mod_LDFLAGS)
50570
	(font_mod_SOURCES, font_mod_CFLAGS, font_mod_LDFLAGS)
50571
	(terminfo_mod_SOURCES, terminfo_mod_CFLAGS, terminfo_mod_LDFLAGS)
50572
	(amiga_mod_SOURCES, amiga_mod_CFLAGS, amiga_mod_LDFLAGS)
50573
	(apple_mod_SOURCES, apple_mod_CFLAGS, apple_mod_LDFLAG): Move from
50574
	here...
50575
	* conf/common.rmk: ... to here.  New file.
50576
50577
	* conf/common.mk: New file.
50578
50579
2005-11-18  Yoshinori K. Okuji  <okuji@enbug.org>
50580
50581
	* conf/powerpc-ieee1275.rmk (grub_script.tab.h): Unified to ...
50582
	(grub_script.tab.c): ... here.
50583
50584
	* conf/sparc64-ieee1275.rmk (grub_script.tab.h): Unified to ...
50585
	(grub_script.tab.c): ... here.
50586
50587
	* conf/i386-pc.rmk (grub_script.tab.h): Unified to ...
50588
	(grub_script.tab.c): ... here.
50589
50590
	* normal/command.c (grub_command_find): Fixed a memory leak of
50591
	MODULE_NAME. Reported by Mike Small <smallm@panix.com>.
50592
50593
2005-11-13  Timothy Baldwin  <T.E.Baldwin99@members.leeds.ac.uk>
50594
50595
	* include/grub/symbol.h: (FUNCTION): Use double quotes instead of
50596
	"@" which marks the start of a comment on ARM.
50597
	(VARIABLE): Likewise.
50598
50599
2005-11-13  Timothy Baldwin  <T.E.Baldwin99@members.leeds.ac.uk>
50600
50601
	Add support for Linux/ADFS partition tables.
50602
50603
	* partmap/acorn.c: New file.
50604
50605
	* include/grub/acorn_filecore.h: Likewise.
50606
50607
	* DISTLIST: Added `partmap/acorn.c' and
50608
	`include/grub/acorn_filecore.h'.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50609
1.1.2 by Otavio Salvador
Import upstream version 1.92
50610
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
50611
	`partmap/acorn.c'.
50612
	(pkgdata_MODULES): Add `acorn.mod'.
50613
	(acorn_mod_SOURCES): New variable.
50614
	(acorn_mod_CFLAGS): Likewise.
50615
50616
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Add
50617
	`partmap/acorn.c'.
50618
	(pkgdata_MODULES): Add `acorn.mod'.
50619
	(acorn_mod_SOURCES): New variable.
50620
	(acorn_mod_CFLAGS): Likewise.
50621
50622
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `partmap/acorn.c'.
50623
	(pkgdata_MODULES): Add `acorn.mod'.
50624
	(acorn_mod_SOURCES): New variable.
50625
	(acorn_mod_CFLAGS): Likewise.
50626
	(acorn_mod_LDFLAGS): Likewise.
50627
50628
	* include/types.h (grub_disk_addr_t): New typedef.
50629
50630
2005-11-13  Marco Gerards  <mgerards@xs4all.nl>
50631
50632
	* geninit.sh: New file.
50633
50634
	* geninitheader.sh: Likewise.
50635
50636
	* commands/boot.c (grub_boot_init, grub_boot_fini): Removed.
50637
	* commands/cat.c (grub_cat_init, grub_cat_fini): Likewise.
50638
	* commands/cmp.c (grub_cmp_init, grub_cmp_fini): Likewise.
50639
	* commands/configfile.c (grub_configfile_init)
50640
	(grub_configfile_fini): Likewise.
50641
	* commands/default.c (grub_default_init, grub_default_fini):
50642
	Likewise.
50643
	* commands/help.c (grub_help_init, grub_help_fini): Likewise.
50644
	* commands/ls.c (grub_ls_init, grub_ls_fini): Likewise.
50645
	* commands/search.c (grub_search_init, grub_search_fini): Likewise.
50646
	* commands/terminal.c (grub_terminal_init, grub_terminal_fini):
50647
	Likewise.
50648
	* commands/test.c (grub_test_init, grub_test_fini): Likewise.
50649
	* commands/timeout.c (grub_timeout_init, grub_timeout_fini):
50650
	Likewise.
50651
	* commands/i386/pc/halt.c (grub_halt_init, grub_halt_fini): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50652
	* commands/ieee1275/halt.c (grub_halt_init, grub_halt_fini):
1.1.2 by Otavio Salvador
Import upstream version 1.92
50653
	Likewise.
50654
	* commands/i386/pc/reboot.c (grub_reboot_init, grub_reboot_fini):
50655
	Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50656
	* commands/ieee1275/reboot.c (grub_reboot_init, grub_reboot_fini):
1.1.2 by Otavio Salvador
Import upstream version 1.92
50657
	Likewise.
50658
	* disk/loopback.c (grub_loop_init, grub_loop_fini): Likewise.
50659
	* fs/affs.c (grub_affs_init, grub_affs_fini): Likewise.
50660
	* fs/ext2.c (grub_ext2_init, grub_ext2_fini): Likewise.
50661
	* fs/fat.c (grub_fat_init, grub_fat_fini): Likewise.
50662
	* fs/hfs.c (grub_hfs_init, grub_hfs_fini): Likewise.
50663
	* fs/iso9660.c (grub_iso9660_init, grub_iso9660_fini): Likewise.
50664
	* fs/jfs.c (grub_jfs_init, grub_jfs_fini): Likewise.
50665
	* fs/minix.c (grub_minix_init, grub_minix_fini): Likewise.
50666
	* fs/sfs.c (grub_sfs_init, grub_sfs_fini): Likewise.
50667
	* fs/ufs.c (grub_ufs_init, grub_ufs_fini): Likewise.
50668
	* fs/xfs.c (grub_xfs_init, grub_xfs_fini): Likewise.
50669
	* normal/main.c (grub_normal_init, grub_normal_fini): Likewise.
50670
	* partmap/amiga.c (grub_amiga_partition_map_init)
50671
	(grub_amiga_partition_map_fini): Likewise.
50672
	* partmap/apple.c (grub_apple_partition_map_init)
50673
	(grub_apple_partition_map_fini): Likewise.
50674
	* partmap/pc.c (grub_pc_partition_map_init)
50675
	(grub_pc_partition_map_fini): Likewise.
50676
	* partmap/sun.c (grub_sun_partition_map_init,
50677
	grub_sun_partition_map_fini): Likewise.
50678
	* term/terminfo.c (grub_terminal_init, grub_terminal_fini):
50679
	Likewise.
50680
50681
	* util/grub-emu.c: Include <grub_modules_init.h>.
50682
	(main): Don't initialize and de-initialize any modules directly,
50683
	use `grub_init_all' and `grub_fini_all' instead.
50684
50685
	* term/i386/pc/vesafb.c (grub_vesafb_init): Renamed to
50686
	`grub_vesafb_mod_init'.
50687
	(grub_vesafb_fini): Renamed to `grub_vesafb_mod_fini'.  Updated
50688
	all users.
50689
	* term/i386/pc/vga.c (grub_vga_init): Renamed to
50690
	`grub_vga_mod_init'.  Updated all users.
50691
	(grub_vga_fini): Renamed to `grub_vga_mod_fini'.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50692
1.1.2 by Otavio Salvador
Import upstream version 1.92
50693
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `grub_emu_init.c'.
50694
	(grub_modules_init.lst, grub_modules_init.h, grub_emu_init.c): New
50695
	rules.
50696
50697
	* include/grub/dl.h (GRUB_MOD_INIT): Add argument `name'.
50698
	Generate a function to initialize the module in utilities.
50699
	Updated all callers.
50700
	(GRUB_MOD_FINI): Add argument `name'.  Generate a function to
50701
	initialize the module in utilities.  Updated all callers.
50702
50703
2005-11-09  Hollis Blanchard  <hollis@penguinppc.org>
50704
50705
	* term/ieee1275/ofconsole.c (grub_ofconsole_cls): Use both the ANSI
50706
	escape sequence and a literal ^L to clear the screen.
50707
50708
	* commands/ieee1275/suspend.c (grub_cmd_suspend): Clear the screen
50709
	when returning from Open Firmware.
50710
50711
2005-11-09  Hollis Blanchard  <hollis@penguinppc.org>
50712
50713
	* term/ieee1275/ofconsole.c (grub_ofconsole_width): New variable.
50714
	(grub_ofconsole_height): Likewise.
50715
	(grub_ofconsole_putchar): If `grub_curr_x' exceeds console width,
50716
	manually insert a '\n'.
50717
	(grub_ofconsole_getwh): Set and return `grub_ofconsole_width' and
50718
	`grub_ofconsole_height'.  Return early if these are already set.
50719
50720
2005-11-07  Vincent Pelletier  <subdino2004@yahoo.fr>
50721
50722
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Add
50723
	`commands/test.c', `fs/affs.c', `fs/sfs.c', `fs/xfs.c',
50724
	`normal/execute.c', `normal/lexer.c', `io/gzio.c',
50725
	`kern/parser.c', `grub_script.tab.c', `normal/function.c'
50726
	and `normal/script.c'.
50727
	(normal_mod_SOURCES): `normal/execute.c', `normal/lexer.c',
50728
	`grub_script.tab.c', `normal/function.c' and `normal/script.c'.
50729
	(test_mod_SOURCES): New	variable.
50730
	(test_mod_CFLAGS): Likewise.
50731
	(test_mod_LDFLAGS): Likewise.
50732
	(pkgdata_MODULES): Add `test.mod'.
50733
	(grub_script.tab.c): New rule.
50734
	(grub_script.tab.h): Likewise.
50735
50736
2005-11-07  Marco Gerards  <mgerards@xs4all.nl>
50737
50738
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
50739
	`commands/test.c', `normal/execute.c', `normal/lexer.c',
50740
	`grub_script.tab.c', `normal/function.c' and `normal/script.c'.
50741
	(normal_mod_SOURCES): `normal/execute.c', `normal/lexer.c',
50742
	`grub_script.tab.c', `normal/function.c' and `normal/script.c'.
50743
	(test_mod_SOURCES): New variable.
50744
	(test_mod_CFLAGS): Likewise.
50745
	(pkgdata_MODULES): Add `test.mod'.
50746
	(grub_script.tab.c): New rule.
50747
	(grub_script.tab.h): Likewise.
50748
50749
2005-11-06  Marco Gerards  <mgerards@xs4all.nl>
50750
50751
	Add initial scripting support.
50752
50753
	* commands/test.c: New file.
50754
	* include/grub/script.h: Likewise.
50755
	* normal/execute.c: Likewise.
50756
	* normal/function.c: Likewise.
50757
	* normal/lexer.c: Likewise.
50758
	* normal/parser.y: Likewise.
50759
	* normal/script.c: Likewise.
50760
50761
	* configure.ac: Add `AC_PROG_YACC' test.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50762
1.1.2 by Otavio Salvador
Import upstream version 1.92
50763
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/test.c',
50764
	`normal/execute.c', `normal/lexer.c', `grub_script.tab.c',
50765
	`normal/function.c' and `normal/script.c'.
50766
	(normal_mod_SOURCES): `normal/execute.c', `normal/lexer.c',
50767
	`grub_script.tab.c', `normal/function.c' and `normal/script.c'.
50768
	(test_mod_SOURCES, test_mod_CFLAGS, test_mod_LDFLAGS): New
50769
	variables.
50770
	(pkgdata_MODULES): Add `test.mod'.
50771
	(grub_script.tab.c): New rule.
50772
	(grub_script.tab.h): Likewise.
50773
50774
	* include/grub/err.h (grub_err_t): Add `GRUB_ERR_TEST_FAILURE'.
50775
50776
	* include/grub/normal.h (grub_test_init): New prototype.
50777
	(grub_test_fini): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50778
1.1.2 by Otavio Salvador
Import upstream version 1.92
50779
	* normal/command.c: Include <grub/script.h>.
50780
	(grub_command_execute): Rewritten.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50781
1.1.2 by Otavio Salvador
Import upstream version 1.92
50782
	* util/grub-emu.c (main): Call `grub_test_init' and
50783
	`grub_test_fini'.
50784
50785
2005-11-03  Hollis Blanchard  <hollis@penguinppc.org>
50786
50787
	* kern/powerpc/ieee1275/init.c (grub_get_rtc): Initialize `msecs'
50788
	to 0.
50789
	* term/ieee1275/ofconsole.c (grub_ofconsole_checkkey): Return -1 if
50790
	there are no pending characters.
50791
50792
2005-11-03  Hollis Blanchard  <hollis@penguinppc.org>
50793
50794
	* kern/powerpc/ieee1275/openfw.c (grub_ieee1275_get_devname): Use
50795
	`grub_strndup' to drop device arguments. Replace unnecessary
50796
	`grub_strndup' with `grub_strdup'.
50797
50798
2005-11-03  Hollis Blanchard  <hollis@penguinppc.org>
50799
50800
	* kern/term.c (grub_cls): Do not call grub_cur_term->cls() if the
50801
	`debug' environment variable has been set.
50802
50803
2005-11-02  Hollis Blanchard  <hollis@penguinppc.org>
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
50804
1.1.2 by Otavio Salvador
Import upstream version 1.92
50805
	* Makefile.in (install-local): Use $(DATA).
50806
	(uninstall): Likewise.
50807
	* conf/powerpc-ieee1275.rmk (bin_UTILITIES): Move grub-mkimage...
50808
	(sbin_UTILITIES): ... to here.
50809
	(sbin_SCRIPTS): New variable.
50810
	(grub_install_SOURCES): New variable.
50811
	* util/powerpc/ieee1275/grub-install.in: New file.
50812
	* util/powerpc/ieee1275/grub-mkimage.c (kernel_path): Remove
50813
	variable.
50814
	(add_segments): Call `grub_util_get_path'.
50815
50816
2005-10-28  Yoshinori K. Okuji  <okuji@enbug.org>
50817
50818
	From Timothy Baldwin:
50819
	* commands/ls.c (grub_ls_list_files): Close FILE with
50820
	grub_file_close.
50821
	* kern/misc.c (grub_vsprintf): Terminate the string S with NUL.
50822
50823
2005-10-24  Marco Gerards  <mgerards@xs4all.nl>
50824
50825
	* include/grub/parser.h: New file.
50826
50827
	* kern/parser.c: Likewise.
50828
50829
	* conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/parser.c'.
50830
	(grub_setup_SOURCES): Likewise.
50831
	(grub_probefs_SOURCES): Likewise.
50832
	(grub_emu_SOURCES): Likewise.
50833
	(kernel_img_HEADERS): Add `parser.h'.
50834
50835
	* conf/powerpc-ieee1275.rmk (grubof_HEADERS): Add `parser.h'.
50836
	(grub_emu_SOURCES): Add `kern/parser.c'.
50837
	(grubof_SOURCES): Likewise.
50838
50839
	* conf/sparc64-ieee1275.rmk (grubof_HEADERS): Add `parser.h'.
50840
	(grubof_SOURCES): Add `kern/parser.c'.
50841
50842
	* include/grub/misc.h (grub_split_cmdline): Removed prototype.
50843
50844
	* kern/misc.c (grub_split_cmdline): Removed function.
50845
50846
	* kern/rescue.c: Include <grub/parser.h>.
50847
	(grub_enter_rescue_mode): Use `grub_parser_split_cmdline' instead
50848
	of `grub_split_cmdline'.
50849
50850
	* normal/command.c: Include <grub/parser.h>.
50851
	(grub_command_execute):  Use `grub_parser_split_cmdline' instead
50852
	of `grub_split_cmdline'.
50853
50854
	* normal/completion.c: Include <grub/parser.h>.
50855
	(cmdline_state): New variable.
50856
	(iterate_dir): End the filename with a quote depending on the
50857
	command line state.
50858
	(get_state): new function.
50859
	(grub_normal_do_completion): Use `grub_parser_split_cmdline' to
50860
	split the arguments and determine the current argument.  When the
50861
	argument string is not quoted, escape all spaces.
50862
50863
2005-10-23  Vincent Pelletier  <subdino2004@yahoo.fr>
50864
50865
	* normal/sparc64/setjmp.S: New file.
50866
50867
2005-10-23  Vincent Pelletier  <subdino2004@yahoo.fr>
50868
50869
	* include/grub/sparc64/libgcc.h: New file.
50870
	* conf/sparc64-ieee1275.rmk (COMMON_ASFLAGS): Remove -Av9.
50871
	(normal_mod_SOURCES): Use normal/sparc64/setjmp.S instead of
50872
	normal/sparc64/setjmp.c.
50873
50874
2005-10-23  Vincent Pelletier  <subdino2004@yahoo.fr>
50875
50876
	* kern/sparc64/dl.c: Rewritten for SPARCV9 ELF.
50877
	* kern/sparc64/cache.S: New file.
50878
	* kern/sparc64/cache.c: Removed.
50879
	* conf/sparc64-ieee1275.rmk (COMMON_ASFLAGS): Add -Av9.
50880
	(COMMON_CFLAGS): Add -mno-app-regs.  Remove -mcpu=v9 and
50881
	-mtune=ultrasparc.
50882
	(COMMON_LDFLAGS): Add -melf64_sparc.
50883
	(grubof_HEADERS): Add sparc64/libgcc.h and machine/kernel.h.
50884
	(grubof_SOURCES): Use cache.S instead of cache.c.
50885
	(grubof_LDFLAGS): Add -mno-app-regs.  Replace "-Xlinker
50886
	--oformat -Xlinker elf64-sparc" by "-Bstatic,-melf64_sparc".
50887
	(pkgdata_MODULES): Uncomment. Leave linux.mod and _linux.mod
50888
	commented though.
50889
	(normal_mod_SOURCES): Add normal/completion.c and normal/misc.c.
50890
	(_linux_mod_SOURCES, _linux_mod_CFLAGS, linux_mod_SOURCES)
50891
	(linux_mod_CFLAGS): Commented out.
50892
	(_linux_mod_LDFLAGS, linux_mod_LDFLAGS): New macro, commented
50893
	out because module isn't built.
50894
	(fshelp_mod_LDFLAGS, fat_mod_LDFLAGS, ext2_mod_LDFLAGS)
50895
	(ufs_mod_LDFLAGS, minix_mod_LDFLAGS, hfs_mod_LDFLAGS)
50896
	(jfs_mod_LDFLAGS, iso9660_mod_LDFLAGS, normal_mod_LDFLAGS)
50897
	(hello_mod_LDFLAGS, boot_mod_LDFLAGS, terminal_mod_LDFLAGS)
50898
	(ls_mod_LDFLAGS, cmp_mod_LDFLAGS, cat_mod_LDFLAGS)
50899
	(font_mod_LDFLAGS, amiga_mod_LDFLAGS, apple_mod_LDFLAGS)
50900
	(pc_mod_LDFLAGS, sun_mod_LDFLAGS, loopback_mod_LDFLAGS)
50901
	(suspend_mod_LDFLAGS, reboot_mod_LDFLAGS, halt_mod_LDFLAGS)
50902
	(help_mod_LDFLAGS, default_mod_LDFLAGS, timeout_mod_LDFLAGS)
50903
	(configfile_mod_LDFLAGS, search_mod_LDFLAGS, xfs_mod_SOURCES)
50904
	(xfs_mod_CFLAGS, xfs_mod_LDFLAGS, affs_mod_SOURCES)
50905
	(affs_mod_CFLAGS, affs_mod_LDFLAGS, sfs_mod_SOURCES)
50906
	(sfs_mod_CFLAGS, sfs_mod_LDFLAGS, gzio_mod_SOURCES)
50907
	(gzio_mod_CFLAGS, gzio_mod_LDFLAGS): New macro.
50908
50909
2005-10-20  Yoshinori K. Okuji  <okuji@enbug.org>
50910
50911
	* util/i386/pc/grub-probefs.c (main): Call grub_xfs_init and
50912
	grub_xfs_fini. Do not call grub_hfs_init or grub_hfs_fini any
50913
	longer, because HFS should not be used on PC.
50914
50915
2005-10-20  Timothy Baldwin  <T.E.Baldwin99@members.leeds.ac.uk>
50916
50917
	* io/gzio.c (grub_gzio_read): Use OFFSET instead of FILE->OFFSET
50918
	consistently within the loop.
50919
50920
2005-10-15  Marco Gerards  <mgerards@xs4all.nl>
50921
50922
	* fs/xfs.c (grub_xfs_iterate_dir): Detect an error if part of a
50923
	directory can not be read.
50924
50925
2005-10-15  Yoshinori K. Okuji  <okuji@enbug.org>
50926
50927
	* configure.ac (AC_INIT): Increase the version number to 1.91.
50928
50929
	* DISTLIST: Added include/grub/terminfo.h, include/grub/tparm.h,
50930
	include/grub/i386/pc/serial.h, term/terminfo.c, term/tparm.c and
50931
	term/i386/pc/serial.c.
50932
50933
2005-10-15  Yoshinori K. Okuji  <okuji@enbug.org>
50934
50935
	* kern/file.c (grub_file_seek): Seeking to an offset equal to a
50936
	file size must be permitted.
50937
50938
	* kern/i386/pc/startup.S (multiboot_trampoline): Fix a mistake
50939
	between %ah and %al.
50940
50941
2005-10-15  Yoshinori K. Okuji  <okuji@enbug.org>
50942
50943
	* fs/xfs.c (grub_xfs_iterate_dir): Change the type of BLK to
50944
	grub_uint64_t.
50945
	Call the hook with a NUL-terminated filename.
50946
	(grub_xfs_mount): Use grub_be_to_cpu32 instead of
50947
	grub_cpu_to_be32.
50948
50949
	* kern/term.c (cursor_state): New variable.
50950
	(grub_term_set_current): Reset the cursor state on a new
50951
	terminal.
50952
	(grub_setcursor): Rewritten to use CURSOR_STATE.
50953
	(grub_getcursor): New function.
50954
50955
	* include/grub/term.h (grub_getcursor): New prototype.
50956
50957
	* io/gzio.c (test_header): Align BUF for accessing it as 32-bit
50958
	integers on ARM. Reported by Timothy Baldwin
50959
	<T.E.Baldwin99@members.leeds.ac.uk>.
50960
50961
2005-10-11  Marco Gerards  <mgerards@xs4all.nl>
50962
50963
	* fs/sfs.c (grub_sfs_open): Don't free `data->label' if it is not
50964
	allocated.
50965
	(grub_sfs_dir): Likewise.
50966
50967
2005-10-09  Marco Gerards  <mgerards@xs4all.nl>
50968
50969
	Add support for the SFS filesystem.
50970
50971
	* fs/sfs.c: New file.
50972
50973
	* DISTLIST: Added `fs/sfs.c'.
50974
50975
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/sfs.c'.
50976
	(grub_probefs_SOURCES): Likewise.
50977
	(grub_emu_SOURCES): Likewise.
50978
	(pkgdata_MODULES): Add `sfs.mod'.
50979
	(sfs_mod_SOURCES): New variable.
50980
	(sfs_mod_CFLAGS): Likewise.
50981
	(sfs_mod_LDFLAGS): Likewise.
50982
50983
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `fs/sfs.c'.
50984
	(pkgdata_MODULES): Add `sfs.mod'.
50985
	(sfs_mod_SOURCES): New variable.
50986
	(sfs_mod_CFLAGS): Likewise.
50987
50988
	* util/grub-emu.c (main): Call `grub_sfs_init' and
50989
	`grub_sfs_fini'.
50990
50991
	* include/grub/fs.h (grub_sfs_init): New prototype.
50992
	(grub_sfs_fini): Likewise.
50993
50994
2005-10-07  Marco Gerards  <mgerards@xs4all.nl>
50995
50996
	Add support for the AFFS filesystem.
50997
50998
	* fs/affs.c: New file.
50999
51000
	* DISTLIST: Added `fs/affs.c'.
51001
51002
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/affs.c'.
51003
	(grub_probefs_SOURCES): Likewise.
51004
	(grub_emu_SOURCES): Likewise.
51005
	(pkgdata_MODULES): Add `affs.mod'.
51006
	(affs_mod_SOURCES): New variable.
51007
	(affs_mod_CFLAGS): Likewise.
51008
	(affs_mod_LDFLAGS): Likewise.
51009
51010
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `fs/affs.c'.
51011
	(pkgdata_MODULES): Add `affs.mod'.
51012
	(affs_mod_SOURCES): New variable.
51013
	(affs_mod_CFLAGS): Likewise.
51014
51015
	* util/grub-emu.c (main): Call `grub_affs_init' and
51016
	`grub_affs_fini'.
51017
51018
	* include/grub/fs.h (grub_affs_init): New prototype.
51019
	(grub_affs_fini): Likewise.
51020
51021
2005-10-01  Marco Gerards  <mgerards@xs4all.nl>
51022
51023
	* fs/xfs.c (grub_xfs_iterate_dir): Add parentheses.
51024
51025
2005-10-01  Marco Gerards  <mgerards@xs4all.nl>
51026
51027
	* configure.ac: Accept `x86_64' as host_cpu.  In that case add
51028
	`-m32' to CFLAGS.
51029
51030
	* genmk.rb (class PModule): Always use `$(#{prefix}_LDFLAGS)' when
51031
	linking.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51032
1.1.2 by Otavio Salvador
Import upstream version 1.92
51033
	* conf/i386-pc.rmk (COMMON_CFLAGS): Add `-m32'.
51034
	(COMMON_LDFLAGS): New variable.
51035
	(kernel_img_LDFLAGS): Include `COMMON_FLAGS'.
51036
	(_chain_mod_LDFLAGS, fshelp_mod_LDFLAGS, fat_mod_LDFLAGS)
51037
	(ext2_mod_LDFLAGS, ufs_mod_LDFLAGS, minix_mod_LDFLAGS)
51038
	(hfs_mod_LDFLAGS, jfs_mod_LDFLAGS, iso9660_mod_LDFLAGS)
51039
	(xfs_mod_LDFLAGS, _linux_mod_LDFLAGS, linux_mod_LDFLAGS)
51040
	(normal_mod_LDFLAGS, hello_mod_LDFLAGS, boot_mod_LDFLAGS)
51041
	(terminal_mod_LDFLAGS, ls_mod_LDFLAGS, cmp_mod_LDFLAGS)
51042
	(cat_mod_LDFLAGS, help_mod_LDFLAGS, reboot_mod_LDFLAGS)
51043
	(halt_mod_LDFLAGS, vga_mod_LDFLAGS, font_mod_LDFLAGS)
51044
	(terminfo_mod_LDFLAGS, serial_mod_LDFLAGS, _multiboot_mod_LDFLAGS)
51045
	(multiboot_mod_LDFLAGS, amiga_mod_LDFLAGS, apple_mod_LDFLAGS)
51046
	(pc_mod_LDFLAGS, sun_mod_LDFLAGS, loopback_mod_LDFLAGS)
51047
	(default_mod_LDFLAGS, timeout_mod_LDFLAGS, configfile_mod_LDFLAGS)
51048
	(vbe_mod_LDFLAGS, vesafb_mod_LDFLAGS, vbeinfo_mod_LDFLAGS)
51049
	(vbetest_mod_LDFLAGS, search_mod_LDFLAGS, gzio_mod_LDFLAGS): New
51050
	variables.
51051
	(normal_mod_ASFLAGS): Add `-m32'.
51052
51053
	* include/grub/types.h (grub_host_addr_t, grub_host_off_t)
51054
	(grub_host_size_t, grub_host_ssize_t): New types.
51055
	(grub_addr_t, grub_off_t, grub_size_t, grub_ssize_t): Make type
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51056
	dependent of `GRUB_CPU_SIZEOF_VOID_P' instead on
1.1.2 by Otavio Salvador
Import upstream version 1.92
51057
	`GRUB_HOST_SIZEOF_VOID_P'.
51058
51059
	* include/grub/kernel.h (struct grub_module_header): Type of
51060
	member offset changed to `grub_host_off_t'.  Type of member size
51061
	changed to `grub_host_size_t'.
51062
	(struct grub_module_info): Type of member offset changed to
51063
	`grub_host_off_t'.  Type of member size changed to
51064
	`grub_host_size_t'.
51065
51066
2005-09-29  Yoshinori K. Okuji  <okuji@enbug.org>
51067
51068
	Make GRUB's kernel compliant to Multiboot Specification.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51069
1.1.2 by Otavio Salvador
Import upstream version 1.92
51070
	* kern/i386/pc/startup.S (multiboot_header): New label.
51071
	(multiboot_entry): Likewise.
51072
	(multiboot_trampoline): Likewise.
51073
51074
	* include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
51075
	Increased to 0x4A0.
51076
51077
	* fs/xfs.c (grub_xfs_iterate_dir): Fix a syntax error. You may not
51078
	put parentheses after a question mark.
51079
	[!GRUB_UTIL] (my_mod): New variable.
51080
51081
	* util/grub-emu.c (main): Call grub_xfs_init and grub_xfs_fini.
51082
51083
2005-09-28  Marco Gerards  <mgerards@xs4all.nl>
51084
51085
	Adds support for the XFS filesystem.  Btrees are not supported
51086
	yet.
51087
51088
	* fs/xfs.c: New file.
51089
51090
	* DISTLIST: Added `fs/xfs.c'.
51091
51092
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/xfs.c'.
51093
	(grub_probefs_SOURCES): Likewise.
51094
	(grub_emu_SOURCES): Likewise.
51095
	(pkgdata_MODULES): Add `xfs.mod'.
51096
	(xfs_mod_SOURCES): New variable.
51097
	(xfs_mod_CFLAGS): Likewise.
51098
51099
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `fs/xfs.c'.
51100
	(pkgdata_MODULES): Add `xfs.mod'.
51101
	(xfs_mod_SOURCES): New variable.
51102
	(xfs_mod_CFLAGS): Likewise.
51103
51104
	* util/grub-emu.c (main): Call `grub_xfs_init' and
51105
	`grub_xfs_fini'.
51106
51107
	* include/grub/fs.h (grub_xfs_init): New prototype.
51108
	(grub_xfs_fini): Likewise.
51109
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51110
1.1.2 by Otavio Salvador
Import upstream version 1.92
51111
2005-09-18  Vesa Jaaskelainen  <chaac@nic.fi>
51112
51113
	* video/i386/pc/vbe.c (grub_vbe_set_video_mode): In indexed
51114
	color modes, allow greater than 16 colors to be configured as
51115
	a default palette.
51116
51117
2005-09-03  Yoshinori K. Okuji  <okuji@enbug.org>
51118
51119
	* normal/completion.c (complete_arguments): Add the qualifier
51120
	const into OPTIONS.
51121
51122
	From Omniflux <omniflux+lists@omniflux.com>:
51123
	* include/grub/terminfo.h: New file.
51124
	* include/grub/tparm.h: Likewise.
51125
	* include/grub/i386/pc/serial.h: Likewise.
51126
	* term/terminfo.c: Likewise.
51127
	* term/tparm.c: Likewise.
51128
	* term/i386/pc/serial.c: Likewise.
51129
	* conf/i386-pc.rmk (pkgdata_MODULES): Added terminfo.mod and
51130
	serial.mod.
51131
	(terminfo_mod_SOURCES): New variable.
51132
	(terminfo_mod_CFLAGS): Likewise.
51133
	(serial_mod_SOURCES): Likewise.
51134
	(serial_mod_CFLAGS): Likewise.
51135
51136
2005-08-31  Yoshinori K. Okuji  <okuji@enbug.org>
51137
51138
	* DISTLIST: Replaced boot/powerpc/ieee1275/crt0.S and
51139
	boot/powerpc/ieee1275/cmain.c with kern/powerpc/ieee1275/crt0.S
51140
	and kern/powerpc/ieee1275/cmain.c, respectively.
51141
51142
	* boot/powerpc/ieee1275/crt0.S: Moved to ...
51143
	* kern/powerpc/ieee1275/crt0.S: ... here.
51144
51145
	* boot/powerpc/ieee1275/cmain.c: Moved to ...
51146
	* kern/powerpc/ieee1275/cmain.c: ... here.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51147
1.1.2 by Otavio Salvador
Import upstream version 1.92
51148
	* conf/powerpc-ieee1275.rmk (grubof_SOURCES): Use
51149
	kern/powerpc/ieee1275/crt0.S and kern/powerpc/ieee1275/cmain.c
51150
	instead of boot/powerpc/ieee1275/crt0.S and
51151
	boot/powerpc/ieee1275/cmain.c, respectively.
51152
51153
	* boot/i386/pc/boot.S (lba_mode): Do not store the total number of
51154
	sectors. It was not used anyway.
51155
51156
2005-08-30  Hollis Blanchard  <hollis@penguinppc.org>
51157
51158
	* term/ieee1275/ofconsole.c (grub_ofconsole_getcharwidth): Fix
51159
	`unused parameter' warning.
51160
51161
2005-08-30  Hollis Blanchard  <hollis@penguinppc.org>
51162
51163
	* term/ieee1275/ofconsole.c (grub_ofconsole_getcharwidth): New
51164
	function.
51165
	(grub_ofconsole_term): Specify grub_ofconsole_getcharwidth as
51166
	getcharwidth.
51167
51168
2005-08-28  Marco Gerards  <metgerards@student.han.nl>
51169
51170
	* include/grub/normal.h (enum grub_completion_type): Added
51171
	`GRUB_COMPLETION_TYPE_ARGUMENT'.
51172
51173
	* normal/cmdline.c (print_completion): Handle
51174
	the `GRUB_COMPLETION_TYPE_ARGUMENT' type.
51175
	* normal/menu_entry.c (store_completion): Likewise.
51176
51177
	* normal/completion.c (complete_arguments): New function.
51178
	(grub_normal_do_completion): Call `complete_arguments' when the
51179
	current words start with a dash.
51180
51181
2005-08-27  Marco Gerards  <metgerards@student.han.nl>
51182
51183
	* conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Fix typo (use
51184
	`gzio.mod' instead of `io.mod').
51185
51186
2005-08-22  Yoshinori K. Okuji  <okuji@enbug.org>
51187
51188
	* gendistlist.sh (EXTRA_DISTFILES): Added genfslist.sh.
51189
	(DISTDIRS): Added io and video.
51190
	Rewrite the search routine to make an output consistently.
51191
51192
	* DISTLIST: Added conf/sparc64-ieee1275.mk,
51193
	conf/sparc64-ieee1275.rmk, include/grub/gzio.h,
51194
	include/grub/ieee1275/ieee1275.h, include/grub/ieee1275/ofdisk.h,
51195
	io/gzio.c, kern/sparc64/cache.c, kern/sparc64/dl.c,
51196
	kern/sparc64/ieee1275/init.c, kern/sparc64/ieee1275/openfw.c and
51197
	util/powerpc/ieee1275/misc.c.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51198
1.1.2 by Otavio Salvador
Import upstream version 1.92
51199
	* include/grub/gzio.h: New file.
51200
	* io/gzio.c: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51201
1.1.2 by Otavio Salvador
Import upstream version 1.92
51202
	* kern/file.c (grub_file_close): Call grub_device_close only if
51203
	FILE->DEVICE is not NULL.
51204
51205
	* include/grub/mm.h [!NULL] (NULL): New macro.
51206
51207
	* include/grub/err.h (GRUB_ERR_BAD_GZIP_DATA): New constant.
51208
51209
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added io/gzip.c.
51210
	(pkgdata_MODULES): Added gzio.mod.
51211
	(gzio_mod_SOURCES): New variable.
51212
	(gzio_mod_CFLAGS): Likewise.
51213
51214
	* conf/i386-pc.rmk (grub_emu_SOURCES): Added io/gzip.c.
51215
	(pkgdata_MODULES): Added gzio.mod.
51216
	(gzio_mod_SOURCES): New variable.
51217
	(gzio_mod_CFLAGS): Likewise.
51218
51219
	* commands/cat.c: Include grub/gzio.h.
51220
	(grub_cmd_cat): Use grub_gzfile_open instead of
51221
	grub_file_open.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51222
1.1.2 by Otavio Salvador
Import upstream version 1.92
51223
	* commands/cmp.c: Include grub/gzio.h.
51224
	(grub_cmd_cmp): Use grub_gzfile_open instead of
51225
	grub_file_open.
51226
51227
	* loader/i386/pc/multiboot.c: Include grub/gzio.h.
51228
	(grub_rescue_cmd_multiboot): Use grub_gzfile_open instead of
51229
	grub_file_open.
51230
	(grub_rescue_cmd_module): Likewise.
51231
51232
2005-08-21  Vincent Pelletier  <subdino2004@yahoo.fr>
51233
51234
	* conf/sparc64-ieee1275.rmk (grubof_SOURCES): The first file must be
51235
	kern/sparc64/ieee1275/init.c because it contains _start.
51236
	* conf/sparc64-ieee1275.mk: Generated from conf/sparc64-ieee1275.rmk.
51237
51238
2005-08-21  Vincent Pelletier  <subdino2004@yahoo.fr>
51239
51240
	* configure.ac: Add support for sparc64 host with ieee1275
51241
	firmware.
51242
	* configure: Generated from configure.ac.
51243
	* disk/ieee1275/ofdisk.c (grub_ofdisk_open): Use grub_ssize_t
51244
	instead of int.
51245
	(grub_ofdisk_read): Likewise.
51246
	(grub_ofdisk_open): Use %p to print pointer values, and cast the
51247
	pointers as (void *) to remove a warning.
51248
	(grub_ofdisk_close): Likewise.
51249
	(grub_ofdisk_read): Likewise.
51250
	* kern/ieee1275/ieee1275.c (grub_ieee1275_exit): This never
51251
	returns, so make it return void to remove a warning.
51252
	* include/grub/ieee1275/ieee1275.h (grub_ieee1275_exit):
51253
	Corresponding prototype change.
51254
	* kern/mm.c (grub_mm_init_region): Use %p to print pointer
51255
	values, and cast the pointers as (void *) to remove a warning.
51256
	(grub_mm_dump): Likewise.
51257
	* conf/sparc64-ieee1275.mk: New file.
51258
	* conf/sparc64-ieee1275.rmk: Likewise.
51259
	* include/grub/sparc64/setjmp.h: Likewise.
51260
	* include/grub/sparc64/types.h: Likewise.
51261
	* include/grub/sparc64/ieee1275/console.h: Likewise.
51262
	* include/grub/sparc64/ieee1275/ieee1275.h: Likewise.
51263
	* include/grub/sparc64/ieee1275/kernel.h: Likewise.
51264
	* include/grub/sparc64/ieee1275/time.h: Likewise.
51265
	* kern/sparc64/cache.c: Likewise.
51266
	* kern/sparc64/dl.c: Likewise.
51267
	* kern/sparc64/ieee1275/init.c: Likewise.
51268
	* kern/sparc64/ieee1275/openfw.c: Likewise.
51269
51270
2005-08-21  Yoshinori K. Okuji  <okuji@enbug.org>
51271
51272
	* util/console.c (grub_ncurses_putchar): If C is greater than
51273
	0x7f, set C to a question mark.
51274
	(grub_ncurses_getcharwidth): New function.
51275
	(grub_ncurses_term): Specify grub_ncurses_getcharwidth as
51276
	getcharwidth.
51277
51278
	* normal/menu.c (print_entry): Made aware of Unicode. First,
51279
	convert TITLE to UCS-4, and predict the cursor position by
51280
	grub_getcharwidth.
51281
51282
	* include/grub/misc.h (grub_utf8_to_ucs4): Specify the qualifier
51283
	const to SRC.
51284
	* kern/misc.c (grub_utf16_to_utf8): Likewise.
51285
51286
2005-08-20  Yoshinori K. Okuji  <okuji@enbug.org>
51287
51288
	* loader/powerpc/ieee1275/linux.c (grub_rescue_cmd_linux): Specify
51289
	the boot file by the option BOOT_IMAGE. Use grub_stpcpy instead of
51290
	grub_strcat.
51291
51292
	* loader/i386/pc/linux.c (grub_rescue_cmd_linux): Specify the boot
51293
	file by the option BOOT_IMAGE. Use grub_stpcpy instead of
51294
	grub_strcpy and grub_strlen. Take it into account that a space
51295
	character is inserted as a delimiter.
51296
51297
2005-08-20  Yoshinori K. Okuji  <okuji@enbug.org>
51298
51299
	* partmap/pc.c (pc_partition_map_iterate): Include the value of an
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51300
	invalid magic in the error.
1.1.2 by Otavio Salvador
Import upstream version 1.92
51301
51302
	* commands/search.c: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51303
1.1.2 by Otavio Salvador
Import upstream version 1.92
51304
	* util/grub-emu.c (main): Call grub_search_init and
51305
	grub_search_fini.
51306
51307
	* kern/rescue.c (grub_rescue_print_disks): Removed.
51308
	(grub_rescue_print_devices): New function.
51309
	(grub_rescue_cmd_ls): Use grub_device_iterate with
51310
	grub_rescue_print_devices instead of grub_disk_dev_iterate with
51311
	grub_rescue_print_disks.
51312
51313
	* kern/partition.c (grub_partition_iterate): Return the result of
51314
	PARTMAP->ITERATE instead of GRUB_ERRNO.
51315
51316
	* kern/device.c: Include grub/partition.h.
51317
	(grub_device_iterate): New function.
51318
51319
	* include/grub/partition.h (grub_partition_iterate): Return int
51320
	instead of grub_err_t.
51321
51322
	* include/grub/normal.h [GRUB_UTIL] (grub_search_init): New
51323
	prototype.
51324
	[GRUB_UTIL] (grub_search_fini): Likewise.
51325
51326
	* include/grub/device.h (grub_device_iterate): New prototype.
51327
51328
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added
51329
	commands/search.c.
51330
	(pkgdata_MODULES): Added search.mod.
51331
	(search_mod_SOURCES): New variable.
51332
	(search_mod_CFLAGS): Likewise.
51333
51334
	* conf/i386-pc.rmk (grub_emu_SOURCES): Added commands/search.c.
51335
	(pkgdata_MODULES): Added search.mod.
51336
	(search_mod_SOURCES): New variable.
51337
	(search_mod_CFLAGS): Likewise.
51338
51339
	* commands/ls.c (grub_ls_list_disks): Renamed to ...
51340
	(grub_ls_list_devices): ... this, and use grub_device_iterate.
51341
	All callers changed.
51342
51343
	* DISTLIST: Added commands/search.c.
51344
51345
2005-08-20  Yoshinori K. Okuji  <okuji@enbug.org>
51346
51347
	* kern/term.c (grub_putchar): Use grub_utf8_to_ucs4 for the
51348
	conversion.
51349
	(grub_getcharwidth): New function.
51350
51351
	* kern/misc.c (grub_utf8_to_ucs4): New function.
51352
51353
	* include/grub/term.h (struct grub_term): Added a new member
51354
	"getcharwidth".
51355
	(grub_getcharwidth): New prototype.
51356
51357
	* include/grub/misc.h (grub_utf8_to_ucs4): New prototype.
51358
51359
	* term/i386/pc/console.c (map_char): New function. Segregated from
51360
	grub_console_putchar.
51361
	(grub_console_putchar): Use map_char.
51362
	(grub_console_getcharwidth): New function.
51363
	(grub_console_term): Specified grub_console_getcharwidth as
51364
	getcharwidth.
51365
51366
	* term/i386/pc/vga.c (grub_vga_getcharwidth): New function.
51367
	(grub_vga_term): Specified grub_vga_getcharwidth as getcharwidth.
51368
51369
	* term/i386/pc/vesafb.c (grub_virtual_screen_setup): Return
51370
	GRUB_ERRNO.
51371
	(grub_vesafb_init): Do not use RC. Instead, use GRUB_ERRNO. Rely
51372
	on grub_strtoul completely.
51373
	(write_char): Declare local variables in the beginning of the
51374
	function.
51375
	(grub_vesafb_getcharwidth): New function.
51376
	(grub_vesafb_term): Specified grub_vesafb_getcharwidth as
51377
	getcharwidth.
51378
51379
2005-08-19  Yoshinori K. Okuji  <okuji@enbug.org>
51380
51381
	* DISTLIST: Replace commands/i386/pc/vbe_list_modes.c and
51382
	commands/i386/pc/vbe_test.c with commands/i386/pc/vbeinfo.c and
51383
	commands/i386/pc/vbetest.c.
51384
51385
	* video/i386/pc/vbe.c (grub_vbe_probe): If INFOBLOCK is not NULL,
51386
	call grub_vbe_get_controller_info again, because the returned
51387
	information is volatile.
51388
	(grub_vbe_set_video_mode): Mostly rewritten.
51389
	(grub_vbe_get_video_mode): Use grub_vbe_probe and use
51390
	grub_vbe_status_t correctly.
51391
	(grub_vbe_get_video_mode_info): Likewise.
51392
	(grub_vbe_set_pixel_rgb): Use a switch statement rather than
51393
	several if statements.
51394
51395
	* commands/i386/pc/vbe_list_modes.c: Renamed to ...
51396
	* commands/i386/pc/vbeinfo.c: ... this.
51397
51398
	* commands/i386/pc/vbe_test.c: Renamed to ...
51399
	* commands/i386/pc/vbetest.c: ... this.
51400
51401
	* commands/i386/pc/vbeinfo.c (grub_cmd_vbe_list_modes): Renamed to
51402
	...
51403
	(grub_cmd_vbeinfo): ... this. Save video modes before
51404
	iterating. Skip a video mode, if it is not available, not enough
51405
	information is given or it is monochrome. Show the memory
51406
	model. Leave the interpretation of MODEVAR to grub_strtoul
51407
	completely.
51408
	(GRUB_MOD_INIT): Rename vbe_list_modes to vbeinfo.
51409
	(GRUB_MOD_FINI): Likewise.
51410
51411
	* commands/i386/pc/vbetest.c (grub_cmd_vbe_test): Renamed to ...
51412
	(grub_cmd_vbetest): ... this. Don't print unnecessarily. Use
51413
	grub_err_t instead of grub_uint32_t. Don't use SPTR. Remove a
51414
	duplicated grub_env_get. Leave the interpretation of MODEVAR to
51415
	grub_strtoul completely.
51416
	(real2pm): Removed.
51417
	(GRUB_MOD_INIT): Rename vbe_test to vbetest.
51418
	(GRUB_MOD_FINI): Likewise.
51419
51420
	* normal/misc.c: Include grub/mm.h.
51421
51422
	* conf/i386-pc.rmk (pkgdata_MODULES): Replaced vbe_test.mod and
51423
	vbe_list_modes with vbetest.mod and vbeinfo.mod.
51424
	(vbe_list_modes_mod_SOURCES): Removed.
51425
	(vbe_list_modes_mod_CFLAGS): Likewise.
51426
	(vbe_test_mod_SOURCES): Likewise.
51427
	(vbe_test_mod_CFLAGS): Likewise.
51428
	(vbeinfo_mod_SOURCES): New variable.
51429
	(vbeinfo_mod_CFLAGS): Likewise.
51430
	(vbetest_mod_SOURCES): Likewise.
51431
	(vbetest_mod_CFLAGS): Likewise.
51432
51433
2005-08-18  Yoshinori K. Okuji  <okuji@enbug.org>
51434
51435
	* normal/misc.c: New file.
51436
51437
	* DISTLIST: Added normal/misc.c.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51438
1.1.2 by Otavio Salvador
Import upstream version 1.92
51439
	* partmap/amiga.c (amiga_partition_map_iterate): Add an argument
51440
	DISK to HOOK. Call HOOK with DISK.
51441
	* partmap/apple.c (apple_partition_map_iterate): Likewise.
51442
	* partmap/pc.c (pc_partition_map_iterate): Likewise.
51443
	* partmap/sun.c (sun_partition_map_iterate): Likewise.
51444
51445
	* normal/menu_entry.c (struct screen): Added a new member
51446
	"completion_shown".
51447
	(completion_buffer): New global variable.
51448
	(make_screen): Set SCREEN->COMPLETION_SHOWN to zero.
51449
	(store_completion): New function.
51450
	(complete): Likewise.
51451
	(clear_completions): Likewise.
51452
	(grub_menu_entry_run): If SCREEN->COMPLETION_SHOWN is non-zero,
51453
	call clear_completions and reset SCREEN->COMPLETION_SHOWN. If C is
51454
	a tab, call complete.
51455
51456
	* normal/completion.c (disk_dev): Removed.
51457
	(print_simple_completion): Likewise.
51458
	(print_partition_completion): Likewise.
51459
	(print_func): New global variable.
51460
	(add_completion): Do not take the arguments WHAT or PRINT any
51461
	longer. Added a new argument TYPE. Instead of printing directly,
51462
	call PRINT_FUNC if not NULL.
51463
	All callers changed.
51464
	(complete_device): Use a local variable DEV instead of
51465
	DISK_DEV. Do not move CURRENT_WORD to the end of a device name.
51466
	(grub_normal_do_completion): Take a new argument HOOK. Do not
51467
	initialize DISK_DEV. Initialize PRINT_FUNC to HOOK. If RET is an
51468
	empty string, return NULL instead.
51469
	All callers changed.
51470
51471
	* normal/cmdline.c (print_completion): New function.
51472
51473
	* kern/partition.c (grub_partition_iterate): Add an argument DISK
51474
	to HOOK.
51475
	All callers changed.
51476
51477
	* kern/disk.c (grub_print_partinfo): Removed.
51478
51479
	* include/grub/partition.h (struct grub_partition_map): Add a new
51480
	argument DISK into HOOK of ITERATE.
51481
	(grub_partition_iterate): Add a new argument DISK to HOOK.
51482
51483
	* include/grub/normal.h (enum grub_completion_type): New enum.
51484
	(grub_completion_type_t): New type.
51485
	(GRUB_COMPLETION_TYPE_COMMAND): New constant.
51486
	(GRUB_COMPLETION_TYPE_DEVICE): Likewise.
51487
	(GRUB_COMPLETION_TYPE_PARTITION): Likewise.
51488
	(GRUB_COMPLETION_TYPE_FILE): Likewise.
51489
	(grub_normal_do_completion): Added a new argument HOOK.
51490
	(grub_normal_print_device_info): New prototype.
51491
51492
	* include/grub/disk.h (grub_print_partinfo): Removed.
51493
51494
	* conf/i386-pc.rmk (grub_emu_SOURCES): Added normal/misc.c.
51495
	(normal_mod_SOURCES): Likewise.
51496
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
51497
	(normal_mod_SOURCES): Likewise.
51498
51499
	* commands/ls.c (grub_ls_list_disks): Use
51500
	grub_normal_print_device_info instead of grub_print_partinfo. Free
51501
	PNAME.
51502
	(grub_ls_list_files): Use grub_normal_print_device_info instead of
51503
	duplicating the code.
51504
51505
2005-08-16  Vesa Jaaskelainen  <chaac@nic.fi>
51506
51507
	* commands/i386/pc/vbe_list_modes.c: Update source formatting to
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51508
	follow GCS more precisely.
51509
	* commands/i386/pc/vbe_test.c: Likewise.
51510
	* include/grub/i386/pc/vbe.h: Likewise.
51511
	* term/i386/pc/vesafb.c: Likewise.
51512
	* video/i386/pc/vbe.c: Likewise.
1.1.2 by Otavio Salvador
Import upstream version 1.92
51513
51514
2005-08-16  Vesa Jaaskelainen  <chaac@nic.fi>
51515
51516
	* DISTLIST: Added term/i386/pc/vesafb.c
51517
	DISTLIST: Added video/i386/pc/vbe.c
51518
	DISTLIST: Added commands/i386/pc/vbe_list_modes.c.
51519
	DISTLIST: Added commands/i386/pc/vbe_test.c.
51520
	* commands/i386/pc/vbe_list_modes.c: New file.
51521
	* commands/i386/pc/vbe_test.c: Likewise.
51522
	* term/i386/pc/vesafb.c: Likewise.
51523
	* video/i386/pc/vbe.c: Likewise.
51524
	* include/grub/i386/pc/vbe.h (GRUB_VBE_DEFAULT_VIDEO_MODE): Added define.
51525
	(grub_vbe_probe) Added prototype.
51526
	(grub_vbe_set_video_mode) Likewise.
51527
	(grub_vbe_get_video_mode) Likewise.
51528
	(grub_vbe_get_video_mode_info) Likewise.
51529
	(grub_vbe_set_pixel_rgb) Likewise.
51530
	(grub_vbe_set_pixel_index) Likewise.
51531
	* conf/i386-pc.rmk (pkgdata_MODULES): Added vbe.mod.
51532
	(pkgdata_MODULES): Added vesafb.mod.
51533
	(pkgdata_MODULES): Added vbe_list_modes.mod.
51534
	(pkgdata_MODULES): Added vbe_test.mod.
51535
	(vbe_mod_SOURCES): Added.
51536
	(vbe_mod_CFLAGS): Likewise.
51537
	(vesafb_mod_SOURCES): Likewise.
51538
	(vesafb_mod_CFLAGS): Likewise.
51539
	(vbe_list_modes_mod_SOURCES): Likewise.
51540
	(vbe_list_modes_mod_CFLAGS): Likewise.
51541
	(vbe_test_mod_SOURCES): Likewise.
51542
	(vbe_test_mod_CFLAGS): Likewise.
51543
51544
2005-08-14  Yoshinori K. Okuji  <okuji@enbug.org>
51545
51546
	* normal/command.c (grub_command_execute): If INTERACTIVE is
51547
	false and GRUB_COMMAND_FLAG_NO_ECHO is not specified, print
51548
	CMDLINE. Disable the pager if INTERACTIVE is true.
51549
	All callers are changed.
51550
51551
	* normal/main.c (grub_normal_execute): Read command.lst and fs.lst
51552
	before reading a config file.
51553
	* normal/main.c (read_config_file): Even if a command is not
51554
	found, register it if it is within an entry.
51555
51556
	* util/grub-emu.c: Include sys/types.h and unistd.h.
51557
	(options): Added --hold.
51558
	(struct arguments): Added a new member "hold".
51559
	(parse_opt): If KEY is 'H', set ARGS->HOLD to ARG or -1 if ARG is
51560
	missing.
51561
	(main): Initialize ARGS.HOLD to zero. Wait until ARGS.HOLD is
51562
	cleared by a debugger, if it is not zero.
51563
51564
	* include/grub/normal.h (grub_command_execute): Add an argument
51565
	INTERACTIVE.
51566
51567
2005-08-14  Vesa Jaaskelainen  <chaac@nic.fi>
51568
51569
	* DISTLIST: Added include/grub/i386/pc/vbe.h.
51570
51571
2005-08-13  Yoshinori K. Okuji  <okuji@enbug.org>
51572
51573
	* aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): Replace the test
51574
	program with another one, because the old one didn't detect a bug
51575
	in gcc-3.4. Always use regparm 2, because the new test is still
51576
	not enough for gcc-4.0. Someone must investigate a simple test
51577
	case which detects a bug in gcc-4.0.
51578
51579
2005-08-12  Yoshinori K. Okuji  <okuji@enbug.org>
51580
51581
	* DISTLIST: Added normal/completion.c.
51582
51583
	* normal/completion.c: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51584
1.1.2 by Otavio Salvador
Import upstream version 1.92
51585
	* term/i386/pc/console.c (grub_console_getwh): New function.
51586
	(grub_console_term): Assign grub_console_getwh to getwh.
51587
51588
	* normal/cmdline.c (grub_tab_complete): Removed. Now the same
51589
	function is defined in normal/completion.c as
51590
	grub_normal_do_completion.
51591
	(grub_cmdline_get): Use grub_normal_do_completion instead of
51592
	grub_tab_complete.
51593
51594
	* kern/partition.c (grub_partition_map_iterate): Return 1 if HOOK
51595
	returns non-zero, otherwise return 0.
51596
	(grub_partition_iterate): First, probe the partition map. Then,
51597
	call ITERATE only for this partition map.
51598
51599
	* kern/misc.c (grub_strncmp): Rewritten.
51600
51601
	* kern/disk.c (grub_disk_dev_iterate): Return 1 if P->ITERATE
51602
	returns non-zero. Otherwise return 0.
51603
51604
	* include/grub/partition.h (grub_partition_map_iterate): Return
51605
	int instead of void.
51606
51607
	* include/grub/normal.h (grub_normal_do_completion): New prototype.
51608
51609
	* include/grub/misc.h (grub_strncmp): Change the type of N to
51610
	grub_size_t.
51611
51612
	* include/grub/disk.h (grub_disk_dev_iterate): Return int instead
51613
	of void.
51614
51615
	* normal/menu.c (draw_border): Cast GRUB_TERM_BORDER_WIDTH to
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51616
	unsigned explicitly before comparing it with I.
1.1.2 by Otavio Salvador
Import upstream version 1.92
51617
51618
	* kern/main.c (grub_env_write_root): Add the attribute unused into
51619
	VAR.
51620
51621
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added
51622
	normal/completion.c.
51623
	(normal_mod_SOURCES): Likewise.
51624
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
51625
	(normal_mod_SOURCES): Likewise.
51626
51627
	* normal/command.c (grub_iterate_commands): If ITERATE returns
51628
	non-zero, return one immediately.
51629
51630
2005-08-09  Vesa Jaaskelainen  <chaac@nic.fi>
51631
51632
	* conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/vbe.h.
51633
	* kern/i386/pc/startup.S: Updated Global Descriptor table's
51634
	descriptions.
51635
	(grub_vbe_get_controller_info): New function.
51636
	(grub_vbe_get_mode_info): Likewise.
51637
	(grub_vbe_set_mode): Likewise.
51638
	(grub_vbe_get_mode): Likewise.
51639
	(grub_vbe_set_memory_window): Likewise.
51640
	(grub_vbe_get_memory_window): Likewise.
51641
	(grub_vbe_set_scanline_length): Likewise.
51642
	(grub_vbe_get_scanline_length): Likewise.
51643
	(grub_vbe_set_display_start): Likewise.
51644
	(grub_vbe_get_display_start): Likewise.
51645
	(grub_vbe_set_palette_data): Likewise.
51646
	* include/grub/i386/pc/vbe.h: New file.
51647
51648
2005-08-08  Hollis Blanchard  <hollis@penguinppc.org>
51649
51650
	* conf/powerpc-ieee1275.rmk (grubof_SOURCES): Replaced
51651
	kern/ieee1275/of.c with kern/ieee1275/ieee1275.c.
51652
	* DISTLIST: Likewise.
51653
	* kern/ieee1275/of.c: Moved to ...
51654
	* kern/ieee1275/ieee1275.c: ... here.
51655
51656
2005-08-08  Hollis Blanchard  <hollis@penguinppc.org>
51657
51658
	* term/ieee1275/ofconsole.c: Include <grub/mm.h>.
51659
	(grub_ofconsole_getwh): Cast -1 to type grub_ieee1275_ihandle_t.
51660
	Pass 0 as `end' parameter to grub_strtoul().
51661
51662
2005-08-08  Hollis Blanchard  <hollis@penguinppc.org>
51663
51664
	* include/grub/powerpc/ieee1275/console.h: Do not include
51665
	<grub/types.h>.  Do not include <grub/symbol.h>.  Remove ASM_FILE
51666
	ifdef.
51667
	(grub_console_cur_color): Remove i386-specific prototype.
51668
	(grub_console_real_putchar): Likewise.
51669
	(grub_console_checkkey): Likewise.
51670
	(grub_console_getkey): Likewise.
51671
	(grub_console_getxy): Likewise.
51672
	(grub_console_gotoxy): Likewise.
51673
	(grub_console_cls): Likewise.
51674
	(grub_console_setcursor): Likewise.
51675
	* kern/powerpc/ieee1275/init.c: Don't include <grub/console.h>.
51676
	Include <grub/machine/console.h>.
51677
	* term/ieee1275/ofconsole.c: Likewise.
51678
51679
2005-08-08  Yoshinori K. Okuji  <okuji@enbug.org>
51680
51681
	* Makefile.in (LIBLZO): New variable.
51682
51683
	* configure.ac: Check for LZO version 2.
51684
51685
	* util/i386/pc/grub-mkimage.c [HAVE_LZO_LZO1X_H]: Include
51686
	lzo/lzo1x.h instead of lzo1x.h.
51687
51688
	* conf/i386-pc.rmk (grub_mkimage_LDFLAGS): Use $(LIBLZO) instead
51689
	of -llzo.
51690
51691
	* util/i386/pc/grub-setup.c (main): Do not free PREFIX
51692
	twice. Reported by Vladimir Serbinenko <phcoder@gmail.com>.
51693
51694
	* partmap/pc.c (pc_partition_map_probe): Restore P->DATA after
51695
	copying the data from PARTITION to P.
51696
51697
2005-08-07  Yoshinori K. Okuji  <okuji@enbug.org>
51698
51699
	* kern/rescue.c (grub_rescue_cmd_rmmod): If the reference count is
51700
	negative, unload the module.
51701
51702
	* util/i386/pc/grub-setup.c (setup): The name of the PC partition
51703
	map is "pc_partition_map" but not "pc".
51704
	(usage): Fix the description. The options are --boot-image and
51705
	--core-image but not --boot-file or --core-file.
51706
	(main): If not specified explicitly, make BOOT_FILE and CORE_FILE
51707
	based on DEFAULT_BOOT_FILE and DEFAULT_CORE_FILE with DIR or
51708
	DEFAULT_DIRECTORY.
51709
51710
	* util/i386/pc/grub-install.in: Do not specify --boot-file or
51711
	--core-file. Specify INSTALL_DEVICE as an argument.
51712
51713
	* util/console.c: Include config.h.
51714
	[HAVE_NCURSeS_CURSES_H]: Include ncurses/curses.h.
51715
	[HAVE_NCURSES_H]: Include ncurses.h.
51716
	[HAVE_CURSES_H]: Include curses.h.
51717
	[!A_NORMAL] (A_NORMAL): Defined as zero.
51718
	[!A_STANDOUT] (A_STANDOUT): Likewise.
51719
51720
	* conf/i386-pc.rmk (grub_emu_LDFLAGS): Use $(LIBCURSES) instead of
51721
	-lncurses.
51722
	* conf/powerpc-ieee1275.rmk (grub_emu_LDFLAGS): Likewise.
51723
51724
	* configure.ac: Check for curses libraries and headers.
51725
51726
	* Makefile.in (LIBCURSES): New variable.
51727
51728
	* genmk.rb (Script::rule): Set the executable bits.
51729
51730
	* util/i386/pc/biosdisk.c (grub_util_biosdisk_get_grub_dev): The
51731
	name of the PC partition map is "pc_partition_map" but not "pc".
51732
51733
2005-08-07  Yoshinori K. Okuji  <okuji@enbug.org>
51734
51735
	* util/i386/pc/grub-install.in (grub_probefs): New variable.
51736
	(modules): Likewise.
51737
	(usage): Added descriptions for --modules and --grub-probefs.
51738
	Handle --modules and --grub-probefs. Save the arguments in MODULES
51739
	and GRUB_PROBEFS, respectively.
51740
	Auto-detect a filesystem module against GRUBDIR. If the result is
51741
	empty and modules are not specified explicitly, abort the
51742
	installation. Add the result to MODULES.
51743
51744
	* DISTLIST: Removed boot/powerpc/ieee1275/ieee1275.c,
51745
	disk/powerpc/ieee1275/ofdisk.c,
51746
	include/grub/powerpc/ieee1275/init.h and
51747
	term/powerpc/ieee1275/ofconsole.c.
51748
	Added disk/ieee1275/ofdisk.c, kern/ieee1275/of.c and
51749
	term/ieee1275/ofconsole.c.
51750
51751
	* include/grub/powerpc/ieee1275/console.h: Resurrected.
51752
51753
	* COPYING: Upgraded to the latest version. Only the address of the
51754
	FSF office has changed.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51755
1.1.2 by Otavio Salvador
Import upstream version 1.92
51756
2005-08-07  Yoshinori K. Okuji  <okuji@enbug.org>
51757
51758
	* conf/powerpc-ieee1275.rmk (grubof_SOURCES): Replaced
51759
	kern/ieee1275.c with kern/ieee1275/of.c.
51760
51761
	* kern/ieee1275.c: Moved to ...
51762
	* kern/ieee1275/of.c: ... here.
51763
51764
2005-08-06  Yoshinori K. Okuji  <okuji@enbug.org>
51765
51766
	* conf/i386-pc.rmk (kernel_img_HEADERS): Reordered for
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51767
	readability.
1.1.2 by Otavio Salvador
Import upstream version 1.92
51768
51769
	* config.guess: Updated to the latest version from gnulib.
51770
	* config.sub: Likewise.
51771
	* install.sh: Likewise.
51772
	* mkinstalldirs: Likewise.
51773
51774
	* include/grub/console.h: Removed. This file is arch-specific. Do
51775
	not put this in include/grub.
51776
51777
	* include/grub/i386/pc/console.h: Resurrected.
51778
51779
	* util/console.c: Include grub/machine/console.h instead of
51780
	grub/console.h.
51781
	* util/grub-emu.c: Likewise.
51782
51783
2005-08-04  Marco Gerards  <metgerards@student.han.nl>
51784
51785
	* kern/term.c (grub_putcode): Use `grub_getwh' instead of
51786
	hardcoded value.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51787
1.1.2 by Otavio Salvador
Import upstream version 1.92
51788
	From Vincent Pelletier  <subdino2004@yahoo.fr>
51789
	* include/grub/term.h (GRUB_TERM_WIDTH, GRUB_TERM_HEIGHT):
51790
	Redefined to use grub_getwh.
51791
	(grub_term): New member named getwh.
51792
	(grub_getwh): New prototype.
51793
	* kern/term.c (grub_getwh): New function.
51794
	* term/i386/pc/console.c (grub_console_getwh): New function.
51795
	(grub_console_term): New member `getwh'.
51796
	* term/i386/pc/vga.c (grub_vga_getwh): New function.
51797
	(grub_vga_term): New member `getwh'.
51798
	* term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Use
51799
	grub_ssize_t.
51800
	(grub_ofconsole_getw): New function.
51801
	(grub_ofconsole_init): Use grub_ssize_t and unsigned char.
51802
	(grub_ofconsole_term): New field named getwh and new initial
51803
	value.
51804
51805
2005-08-03  Hollis Blanchard  <hollis@penguinppc.org>
51806
51807
	* include/grub/powerpc/ieee1275/ieee1275.h: Move ...
51808
	* include/grub/ieee1275/ieee1275.h: ... to here.  All users updated.
51809
	Move `abort', `grub_reboot', and `grub_halt' prototypes ...
51810
	* include/grub/powerpc/ieee1275/kernel.h: ... to here.
51811
	* commands/ieee1275/halt.c: Include <grub/machine/kernel.h> instead
51812
	of <grub/machine/ieee1275.h>.
51813
	* commands/ieee1275/reboot.c: Likewise.
51814
	* boot/powerpc/ieee1275/ieee1275.c: Move ...
51815
	* kern/ieee1275.c: ... to here.  All users updated.  Change all
51816
	parameter structs to use new type `grub_ieee1275_cell_t'.
51817
	* term/powerpc/ieee1275/ofconsole.c: Move ...
51818
	* term/ieee1275/ofconsole.c: ... to here.  All users updated.
51819
	* disk/powerpc/ieee1275/ofdisk.c: Move ...
51820
	* disk/ieee1275/ofdisk.c: ... to here.  All users updated.
51821
	* boot/powerpc/ieee1275/cmain.c: Change `grub_ieee1275_entry_fn' type
51822
	to return int.
51823
	* include/grub/i386/pc/console.h: Move to include/grub/console.h.
51824
	Remove unused prototypes.  All users updated.
51825
	* include/grub/powerpc/ieee1275/console.h: Removed.
51826
	* include/grub/powerpc/ieee1275/ieee1275.h: Define
51827
	`grub_ieee1275_cell_t'.
51828
	* kern/powerpc/ieee1275/openfw.c: Include <grub/machine/kernel.h>.
51829
	Cast comparisons with -1 to the correct type.
51830
	* loader/powerpc/ieee1275/linux.c (kernel_entry_t): Change parameter
51831
	type to match `grub_ieee1275_entry_fn'.
51832
51833
2005-08-01  Yoshinori K. Okuji  <okuji@enbug.org>
51834
51835
	* DISTLIST: Added util/i386/pc/grub-probefs.c.
51836
51837
	* conf/i386-pc.rmk (sbin_UTILITIES): Added grub-probefs.
51838
	(grub_setup_SOURCES): Removed partmap/amiga.c, partmap/apple.c and
51839
	partmap/sun.c.
51840
	(grub_probefs_SOURCES): New variable.
51841
51842
	* util/i386/pc/grub-probefs.c: New file.
51843
51844
	* util/i386/pc/grub-setup.c (main): Call
51845
	grub_pc_partition_map_init, grub_ufs_init, grub_minix_init,
51846
	grub_hfs_init and grub_jfs_init to initialize the system. Call
51847
	grub_ufs_fini, grub_minix_fini, grub_hfs_fini, grub_jfs_init and
51848
	grub_pc_partition_map_fini to finish the system.
51849
51850
2005-07-31  Yoshinori K. Okuji  <okuji@enbug.org>
51851
51852
	* loader/i386/pc/multiboot.c (grub_multiboot_is_elf32): New
51853
	function.
51854
	(grub_multiboot_load_elf32): Likewise.
51855
	(grub_multiboot_is_elf64): Likewise.
51856
	(grub_multiboot_load_elf64): Likewise.
51857
	(grub_multiboot_load_elf): Likewise.
51858
	(grub_rescue_cmd_multiboot): Call grub_multiboot_load_elf to load
51859
	an ELF32 or ELF64 file.
51860
	This is based on a patch from Ruslan Nikolaev <nruslan@mail.com>.
51861
51862
	From Serbinenko Vladimir <serbinenko.vova@list.ru>:
51863
	* kern/disk.c (grub_print_partinfo): Check if FS->LABEL is not
51864
	NULL before calling FS->LABEL.
51865
	* fs/fat.c (grub_fat_dir): Initialize DIRNAME to NULL.
51866
	* commands/ls.c (grub_ls_list_files): Show labels, if possible.
51867
	(grub_ls_list_disks): Check if FS and FS->LABEL are not NULL
51868
	before calling FS->LABEL.
51869
51870
2005-07-26  Yoshinori K. Okuji  <okuji@enbug.org>
51871
51872
	* util/i386/pc/grub-install.in (datadir): New variable.
51873
	(libdir): Removed.
51874
	(pkgdatadir): New variable.
51875
	(pkglibdir): Removed.
51876
51877
2005-07-24  Yoshinori K. Okuji  <okuji@enbug.org>
51878
51879
	* DISTLIST: Added util/i386/pc/grub-install.in.
51880
51881
	* util/i386/pc/grub-install.in: New file.
51882
51883
	* conf/i386-pc.rmk (sbin_SCRIPTS): New variable.
51884
	(grub_install_SOURCES): Likewise.
51885
51886
	* genmk.rb: Added support for scripts.
51887
	(Script): New class.
51888
	(scripts): New variable.
51889
51890
	* Makefile.in (install-local): Install sbin_SCRIPTS by
51891
	INSTALL_SCRIPT.
51892
	(uninstall): Remove sbin_SCRIPTS.
51893
51894
	* util/i386/pc/grub-setup.c (main): If the argument is not a GRUB
51895
	device, try to get a GRUB device by
51896
	grub_util_biosdisk_get_grub_dev.
51897
	Free DEST_DEV.
51898
51899
	* util/i386/pc/grub-mkdevicemap.c (usage): Remove a duplicated
51900
	description for --device-map.
51901
51902
2005-07-20  Yoshinori K. Okuji  <okuji@enbug.org>
51903
51904
	Change the semantics of variable hooks. They now return	strings
51905
	instead of error values.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
51906
1.1.2 by Otavio Salvador
Import upstream version 1.92
51907
	* util/i386/pc/grub-setup.c: Include grub/env.h.
51908
	(setup): Use grub_device_set_root instead of grub_env_set.
51909
51910
	* kern/rescue.c (grub_rescue_cmd_root): Use grub_env_set and
51911
	grub_env_get instead of grub_device_set_root and
51912
	grub_device_get_root, respectively.
51913
51914
	* kern/main.c (grub_env_write_root): New function.
51915
	(grub_set_root_dev): Register grub_env_write_hook for "root". Use
51916
	grub_env_set instead of grub_device_set_root.
51917
51918
	* kern/env.c (HASHSZ): Reduced to 13, because GRUB does not need
51919
	many variables.
51920
	(grub_env_set): Set ENV->VALUE to the result of ENV->WRITE_HOOK
51921
	rather than calling ENV->WRITE_HOOK afterwards.
51922
	(grub_env_get): Return the result of ENV->READ_HOOK rather than
51923
	passing a pointer of a pointer.
51924
	(grub_register_variable_hook): Change the types of "read_hook" and
51925
	"write_hook" to grub_env_read_hook_t and grub_env_write_hook_t,
51926
	respectively.
51927
	Allocate the default empty string on the heap, because this string
51928
	may be freed later.
51929
51930
	* kern/device.c: Include grub/env.h.
51931
	(grub_device_set_root): Removed.
51932
	(grub_device_get_root): Likewise.
51933
	(grub_device_open): Use grub_env_get instead of
51934
	grub_device_get_root.
51935
51936
	* include/grub/env.h (grub_env_read_hook_t): New type.
51937
	(grub_env_write_hook_t): Likewise.
51938
	(grub_env_var): Change the types of "read_hook" and "write_hook"
51939
	to grub_env_read_hook_t and grub_env_write_hook_t, respectively.
51940
	(grub_register_variable_hook): Likewise.
51941
51942
	* include/grub/device.h (grub_device_set_root): Removed.
51943
	(grub_device_set_root): Likewise.
51944
51945
	* fs/fat.c (grub_fat_dir): Make a copy of PATH in DIRNAME, and
51946
	make sure that DIRNAME terminates with '/', so that
51947
	grub_fat_find_dir will fail if PATH is not a directory.
51948
51949
	* commands/ls.c (grub_ls_list_files): Remove the qualifier const
51950
	from DIRNAME.
51951
	Use the qualifier auto for print_files and print_files_long.
51952
	If FS->DIR sets GRUB_ERRNO to GRUB_ERR_BAD_FILE_TYPE, try DIRNAME
51953
	as a regular file.
51954
	Put a newline only if there is no error.
51955
	(grub_cmd_ls): Remove grub_ls_print_files, because this is not
51956
	used.
51957
51958
2005-07-20  Yoshinori K. Okuji  <okuji@enbug.org>
51959
51960
	* kern/partition.c (grub_partition_probe): Initialize PART to
51961
	NULL. Otherwise, when no partition map is registered, this returns
51962
	a garbage.
51963
51964
2005-07-19  Yoshinori K. Okuji  <okuji@enbug.org>
51965
51966
	* partmap/apple.c (apple_partition_map_iterate): Check if POS
51967
	equals GRUB_DISK_SECTOR_SIZE to see if the partition table is
51968
	valid.
51969
51970
2005-07-18  Yoshinori K. Okuji  <okuji@enbug.org>
51971
51972
	* commands/ls.c (grub_ls_list_disks): Print the filesystem
51973
	information on each device, if it does not have partitions. Print
51974
	"Device" instead of "Disk", because this function is not specific
51975
	to disk devices.
51976
51977
	* normal/main.c (grub_rescue_cmd_normal): Make the variable CONFIG
51978
	static to ensure that it is put on the memory rather than a
51979
	register.
51980
51981
2005-07-17  Yoshinori Okuji  <okuji@enbug.org>
51982
51983
	* commands/cat.c (GRUB_MOD_INIT): Use better documentation.
51984
	(grub_cat_init): Likewise.
51985
	* loader/i386/pc/chainloader_normal.c (GRUB_MOD_INIT): Likewise.
51986
	(options): Likewise.
51987
	* commands/configfile.c (GRUB_MOD_INIT): Likewise.
51988
	(grub_configfile_init): Likewise.
51989
	* font/manager.c (GRUB_MOD_INIT): Likewise.
51990
	* commands/help.c (GRUB_MOD_INIT): Likewise.
51991
	(grub_help_init): Likewise.
51992
	* normal/command.c (grub_command_init): Likewise.
51993
	* loader/i386/pc/linux_normal.c (GRUB_MOD_INIT): Likewise.
51994
	* disk/loopback.c (grub_loop_init): Likewise.
51995
	(GRUB_MOD_INIT): Likewise.
51996
	* commands/ls.c (grub_ls_init): Likewise.
51997
	(GRUB_MOD_INIT): Likewise.
51998
	(options): Likewise.
51999
	* commands/boot.c (grub_boot_init): Likewise.
52000
	(GRUB_MOD_INIT): Likewise.
52001
	* loader/i386/pc/multiboot_normal.c (GRUB_MOD_INIT): Likewise.
52002
	* commands/i386/pc/reboot.c (grub_reboot_init): Likewise.
52003
	(GRUB_MOD_INIT): Likewise.
52004
	* commands/cmp.c (grub_cmp_init): Likewise.
52005
	(GRUB_MOD_INIT): Likewise.
52006
52007
	* normal/arg.c: Use <> instead of "" to include header files.
52008
	(SHORT_ARG_HELP): New macro.
52009
	(SHORT_ARG_USAGE): Likewise.
52010
	(help_options): Specify SHORT_ARG_HELP and SHORT_ARG_USAGE instead
52011
	of 'h' and 'u' for help and usage, respectively. Use more GNU-like
52012
	descriptions.
52013
	(find_short): Check if C is 'h' or 'u' explicitly.
52014
	(grub_arg_show_help): Use space characters instead of tabs. Treat
52015
	SHORT_ARG_HELP and SHORT_ARG_USAGE exceptionally so that -h and -u
52016
	are shown with --help and --usage only if they are not used for
52017
	the command itself.
52018
	(parse_option): Use SHORT_ARG_HELP and SHORT_ARG_USAGE instead of
52019
	'h' and 'u'.
52020
52021
	* include/grub/arg.h (struct grub_arg_option): Add the qualifier
52022
	const into "longarg". Change the type of "shortarg" to int.
52023
52024
2005-07-17  Yoshinori Okuji  <okuji@enbug.org>
52025
52026
	* boot/i386/pc/boot.S (boot_drive_check): New label.
52027
52028
	* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_DRIVE_CHECK): New
52029
	macro.
52030
52031
	* util/i386/pc/grub-setup.c (setup): Added a workaround for BIOSes
52032
	which do not pass a boot drive correctly. Copied from GRUB Legacy.
52033
52034
2005-07-17  Yoshinori Okuji  <okuji@enbug.org>
52035
52036
	* kern/i386/pc/startup.S (gate_a20_try_system_control_port_a):
52037
	When turning off Gate A20, skip the check and return immediately,
52038
	because this is not fatal usually.
52039
52040
2005-07-17  Yoshinori Okuji  <okuji@enbug.org>
52041
52042
	* conf/i386-pc.rmk (pxeboot_img_LDFLAGS): The text address should
52043
	be 0x7C00 instead of 0x8000.
52044
52045
	* boot/i386/pc/pxeboot.S: Rewritten.
52046
52047
	* kern/i386/pc/startup.S (gate_a20_try_bios): No need to specify
52048
	EXT_C.
52049
	(gate_a20_check_state): Read a byte from 0x108000. Invert the
52050
	result.
52051
52052
2005-07-16  Yoshinori K. Okuji  <okuji@enbug.org>
52053
52054
	* kern/i386/pc/startup.S (grub_gate_a20): Rewritten for
52055
	robustness. This routine now supports a BIOS call and System
52056
	Control Port A to modify the gate A20.
52057
52058
	* include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
52059
	Increased to 0x440.
52060
52061
2005-07-12  Hollis Blanchard  <hollis@penguinppc.org>
52062
52063
	* disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_open): dprintf the
52064
	device path and resulting ihandle.
52065
	(grub_ofdisk_close): dprintf the ihandle being closed.
52066
	(grub_ofdisk_read): dprintf function parameters.
52067
	* kern/mm.c (grub_mm_init_region): Likewise.
52068
	* loader/powerpc/ieee1275/linux.c: Remove extra whitespace.
52069
	(grub_linux_boot): dprintf the Linux entry point, initrd address and
52070
	size, and boot arguments.
52071
	(grub_rescue_cmd_linux): dprintf each ELF segment's address and size
52072
	before loading into memory.
52073
	(grub_rescue_cmd_initrd): dprintf the initrd's address and size
52074
	before loading into memory.
52075
52076
2005-07-12  Yoshinori K. Okuji  <okuji@enbug.org>
52077
52078
	* kern/mm.c: Added much documentation.
52079
	(GRUB_MM_ALIGN_LOG2): When GRUB_CPU_SIZEOF_VOID_P is
52080
	8, set to 5 instead of 8.
52081
52082
2005-07-10  Yoshinori Okuji  <okuji@enbug.org>
52083
52084
	* DISTLIST: Added util/i386/pc/grub-mkimage.c.
52085
52086
	* conf/i386-pc.rmk (sbin_UTILITIES): Added grub-mkdevicemap.
52087
	(grub_mkdevicemap_SOURCES): New variable.
52088
52089
	* util/i386/pc/grub-mkdevicemap.c: New file. Mostly copied from
52090
	lib/device.c of GRUB Legacy.
52091
52092
2005-07-10  Yoshinori Okuji  <okuji@enbug.org>
52093
52094
	* commands/ls.c (grub_ls_list_files): Check if *PATH is NUL
52095
	instead of PATH is NULL.
52096
52097
2005-07-09  Vincent Pelletier  <subdino2004@yahoo.fr>
52098
52099
	* commands/cmp.c (BUFFER_SIZE): New macro.
52100
	(grub_cmd_cmp): Close the right file at the right time.  Compare
52101
	only data just read.  Don't report files of different  size as
52102
	identical.  Dynamically allocate buffers.  Move variable
52103
	declarations at the beginning of function.
52104
52105
2005-07-09  Yoshinori Okuji  <okuji@enbug.org>
52106
52107
	* aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): The return value was
52108
	reverse.
52109
52110
2004-07-04  Vincent Pelletier  <subdino2004@yahoo.fr>
52111
52112
	* normal/cmdline.c (grub_cmdline_get): Don't fallback on ctrl-d
52113
	when backspace is pressed at beginning of line.
52114
52115
2005-07-03  Yoshinori Okuji  <okuji@enbug.org>
52116
52117
	* DISTLIST: Added genfslist.sh.
52118
52119
	* normal/main.c (fs_module_list): New variable.
52120
	(autoload_fs_module): New function.
52121
	(read_fs_list): Likewise.
52122
	(grub_normal_execute): Call read_fs_list.
52123
52124
	* kern/fs.c (grub_fs_autoload_hook): New variable.
52125
	(grub_fs_probe): Added support for auto-loading.
52126
52127
	* include/grub/normal.h (struct grub_fs_module_list): New struct.
52128
	(grub_fs_module_list_t): New type.
52129
52130
	* include/grub/fs.h (grub_fs_autoload_hook_t): New type.
52131
	(grub_fs_autoload_hook): New prototype.
52132
52133
	* genfslist.sh: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52134
1.1.2 by Otavio Salvador
Import upstream version 1.92
52135
	* genmk.rb: Added a rule to generate a filesystem list.
52136
52137
2005-06-30  Marco Gerards  <metgerards@student.han.nl>
52138
52139
	* configure.ac: Fix the test for cross-compiling.
52140
52141
	* genmk.rb (Program): Use `$(CC)' instead of `$(BUILD_CC)'.  Don't
52142
	define GRUB_UTIL anymore.
52143
52144
	* util/powerpc/ieee1275/grub-mkimage.c (load_note): Endian fixes
52145
	so this function works on other systems than just big endian.
52146
	(load_modules): Likewise.
52147
	(add_segments): Likewise.
52148
52149
2005-06-23  Hollis Blanchard  <hollis@penguinppc.org>
52150
52151
	* kern/misc.c (grub_vsprintf): Add `longfmt'.  If format string
52152
	contains `l' modifier, get a long from va_arg().
52153
52154
2005-06-23  Yoshinori K. Okuji  <okuji@enbug.org>
52155
52156
	* kern/mm.c (grub_free): If the next free block which is being
52157
	merged is the first free block, set the first block to the block
52158
	being freed.
52159
	Reported by Vincent Guffens <guffens@inma.ucl.ac.be>.
52160
52161
2005-05-08  Hollis Blanchard  <hollis@penguinppc.org>
52162
52163
	* boot/powerpc/ieee1275/cmain.c (cmain): Initialize
52164
	`grub_ieee1275_chosen'.
52165
52166
2005-05-08  Hollis Blanchard  <hollis@penguinppc.org>
52167
52168
	* boot/powerpc/ieee1275/cmain.c	(module_info): Remove definition.
52169
	(grub_ieee1275_chosen): New variable.
52170
	(cmain): Initialize and use `grub_ieee1275_chosen' instead of
52171
	`chosen'.
52172
	* boot/powerpc/ieee1275/crt0.S (init_stack): Remove stack space.
52173
	* boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_get_property):
52174
	Rename first argument to `phandle' for consistency.
52175
	(grub_ieee1275_get_property_length): Likewise.
52176
	(grub_ieee1275_next_property): Likewise.  Change type of first argument
52177
	to grub_ieee1275_phandle_t.
52178
	* include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_entry_fn):
52179
	Move export next to declaration.
52180
	(grub_ieee1275_chosen): New variable.
52181
	* include/grub/powerpc/ieee1275/kernel.h (GRUB_IEEE1275_MODULE_BASE):
52182
	Correct cosmetic typo.
52183
	* kern/powerpc/ieee1275/init.c (grub_set_prefix): Use
52184
	`grub_ieee1275_chosen'.
52185
	* kern/powerpc/ieee1275/openfw.c (grub_map): Likewise.
52186
	* loader/powerpc/ieee1275/linux.c (grub_linux_boot): Likewise.
52187
	(grub_rescue_cmd_linux): Set `initrd_addr' to 0.
52188
	* term/powerpc/ieee1275/ofconsole.c (grub_ofconsole_refresh): Use
52189
	`grub_ieee1275_chosen'.
52190
52191
2005-05-10  Hollis Blanchard  <hollis@penguinppc.org>
52192
52193
	* boot/powerpc/ieee1275/cmain.c (cmain): Remove code to parse
52194
	/chosen/bootargs.
52195
	* kern/powerpc/ieee1275/init.c (grub_machine_init): Parse
52196
	/chosen/bootargs as "variable=value" pairs.
52197
52198
2005-05-08  Vincent Pelletier  <subdino2004@yahoo.fr>
52199
52200
	* include/grub/misc.h (grub_dprintf): New macro.
52201
	(grub_real_dprintf): New prototype.
52202
	(grub_strword): Likewise.
52203
	(grub_iswordseparator): Likewise.
52204
	* kern/misc.c (grub_real_dprintf): New function.
52205
	(grub_strword): Likewise.
52206
	(grub_iswordseparator): Likewise.
52207
52208
2005-04-30  Hollis Blanchard  <hollis@penguinppc.org>
52209
52210
	* boot/powerpc/ieee1275/cmain.c: Don't include grub/machine/init.h.
52211
	(roundup): Remove macro.
52212
	(grub_ieee1275_flags): Make static.
52213
	(grub_ieee1275_realmode): Remove.
52214
	(grub_ieee1275_test_flag): New function.
52215
	(grub_ieee1275_set_flag): Likewise.
52216
	(find_options): Rename to `grub_ieee1275_find_options'; update
52217
	callers. Set GRUB_IEEE1275_FLAG_REAL_MODE and
52218
	GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS.
52219
	(cmain): New prototype.
52220
	(cmain): Use `grub_ieee1275_set_flag' instead of accessing
52221
	`grub_ieee1275_flags' directly.
52222
	* conf/powerpc-ieee1275.rmk (grubof_HEADERS): Remove
52223
	machine/biosdisk.h.
52224
	* disk/powerpc/ieee1275/ofdisk.c: Include grub/machine/ofdisk.h.
52225
	Don't include grub/machine/init.h.
52226
	(grub_ofdisk_open): Call `grub_ieee1275_test_flag'.
52227
	* include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_flags):
52228
	Remove prototype.
52229
	(grub_ieee1275_realmode): Likewise.
52230
	(grub_ieee1275_flag): New enum.
52231
	(grub_ieee1275_test_flag): New prototype.
52232
	(grub_ieee1275_set_flag): New prototype.
52233
	* include/grub/powerpc/ieee1275/init.h: Remove file.
52234
	* include/grub/powerpc/ieee1275/ofdisk.h: New file.
52235
	* kern/powerpc/ieee1275/init.c: Don't include grub/machine/init.h.
52236
	Include grub/machine/console.h.  Include grub/machine/ofdisk.h.
52237
	(grub_machine_fini): Don't call `grub_ieee1275_release'.  Remove
52238
	comment.
52239
	* kern/powerpc/ieee1275/openfw.c (grub_claimmap): Call
52240
	`grub_ieee1275_test_flag'.
52241
	(grub_ieee1275_encode_devname): Likewise.
52242
52243
2005-04-21  Hollis Blanchard  <hollis@penguinppc.org>
52244
52245
	* include/grub/powerpc/ieee1275/ieee1275.h
52246
	(grub_ieee1275_encode_devname): New prototype.
52247
	(grub_ieee1275_get_filename): Likewise.
52248
	* kern/powerpc/ieee1275/init.c (grub_translate_ieee175_path): New
52249
	function.
52250
	(grub_set_prefix): Likewise.
52251
	(grub_machine_init): Call grub_set_prefix.
52252
	* kern/powerpc/ieee1275/openfw.c: Fix typos.
52253
	(grub_parse_type): New enum.
52254
	(grub_ieee1275_get_devargs): New function.
52255
	(grub_ieee1275_get_devname): Likewise.
52256
	(grub_ieee1275_parse_args): Likewise.
52257
	(grub_ieee1275_get_filename): Likewise.
52258
	(grub_ieee1275_encode_devname): Likewise.
52259
52260
2005-03-30  Marco Gerards  <metgerards@student.han.nl>
52261
52262
	* kern/powerpc/ieee1275/init.c (grub_machine_fini): Don't call
52263
	`grub_loader_unset'.
52264
52265
2005-03-26  Hollis Blanchard  <hollis@penguinppc.org>
52266
52267
	* commands/ieee1275/halt.c (grub_cmd_halt): Call grub_halt
52268
	instead of grub_ieee1275_interpret.
52269
	(grub_halt_init): New function.
52270
	(grub_halt_fini): Likewise.
52271
	(GRUB_MOD_INIT): Correct message grammar.
52272
	* commands/ieee1275/reboot.c (grub_cmd_reboot): Call grub_reboot
52273
	instead of grub_ieee1275_interpret.
52274
	(grub_reboot_init): New function.
52275
	(grub_reboot_fini): Likewise.
52276
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Replace
52277
	commands/i386/pc/halt.c, commands/i386/pc/reboot.c, and
52278
	util/i386/pc/misc.c with commands/ieee1275/halt.c,
52279
	commands/ieee1275/reboot.c, and util/powerpc/ieee1275/misc.c.
52280
	* disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_fini): New
52281
	function.
52282
	* include/grub/powerpc/ieee1275/console.h (grub_console_fini):
52283
	Add prototype.
52284
	* include/grub/powerpc/ieee1275/ieee1275.h (grub_reboot): Add
52285
	prototype.
52286
	(grub_halt): Likewise.
52287
	* include/grub/powerpc/ieee1275/init.h: Remove inaccurate comment.
52288
	(cmain): Remove __attribute__((unused)).
52289
	* kern/powerpc/ieee1275/init.c (grub_heap_start): New variable.
52290
	(grub_heap_len): Likewise.
52291
	(grub_machine_fini): New function.
52292
	* kern/powerpc/ieee1275/openfw.c (grub_reboot): New function.
52293
	(grub_halt): Likewise.
52294
	* term/powerpc/ieee1275/ofconsole.c (grub_console_fini): New
52295
	function.
52296
	* util/powerpc/ieee1275/misc.c: New file.
52297
52298
2005-03-19  Yoshinori K. Okuji  <okuji@enbug.org>
52299
52300
	* DISTLIST: New file.
52301
	* gendistlist.sh: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52302
1.1.2 by Otavio Salvador
Import upstream version 1.92
52303
	* Makefile.in (COMMON_DISTFILES): Removed.
52304
	(BOOT_DISTFILES): Likewise.
52305
	(CONF_DISTFILES): Likewise.
52306
	(DISK_DISTFILES): Likewise.
52307
	(FS_DISTFILES): Likewise.
52308
	(INCLUDE_DISTFILES): Likewise.
52309
	(KERN_DISTFILES): Likewise.
52310
	(LOADER_DISTFILES): Likewise.
52311
	(TERM_DISTFILES): Likewise.
52312
	(UTIL_DISTFILES): Likewise.
52313
	(DISTFILES): Likewise.
52314
	(uninstall): Uninstall files in $(pkgdata_DATA).
52315
	(DISTLIST): New target.
52316
	(distdir): Use the contents of the file DISTLIST to get a list of
52317
	distributed files.
52318
52319
2005-03-18  Yoshinori K. Okuji  <okuji@enbug.org>
52320
52321
	* fs/fat.c (grub_fat_mount): Ignore the 3rd bit of a media
52322
	descriptor. This is ported from GRUB Legacy.
52323
52324
	* gencmdlist.sh: Added an extra semicolon to make it work with
52325
	old sed versions. Reported by Robert Bihlmeyer
52326
	<robbe@orcus.priv.at>.
52327
52328
2005-03-08  Yoshinori Okuji  <okuji@enbug.org>
52329
52330
	Automatic loading of commands is supported.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52331
1.1.2 by Otavio Salvador
Import upstream version 1.92
52332
	* normal/main.c (read_command_list): New function.
52333
	(grub_normal_execute): Call read_command_list.
52334
52335
	* normal/command.c (grub_register_command): Return zero or CMD.
52336
	Allocate CMD->NAME from the heap.
52337
	Initialize CMD->MODULE_NAME to zero.
52338
	Find the same name as well. If the same command is found and it is
52339
	a dummy command, overwrite members. If it is not a dummy command,
52340
	return zero.
52341
	(grub_unregister_command): Free Q->NAME and Q->MODULE_NAME.
52342
	(grub_command_find): If a dummy command is found, load a module
52343
	and retry to find a command only once.
52344
52345
	* normal/cmdline.c (grub_tab_complete): Call grub_command_find to
52346
	make sure that each command is loaded.
52347
52348
	* include/grub/normal.h (GRUB_COMMAND_FLAG_NOT_LOADED): New
52349
	macro.
52350
	(struct grub_command): Remove const from the member `name'.
52351
	Add a new member `module_name'.
52352
	(grub_register_command): Return grub_command_t.
52353
52354
	* commands/help.c (grub_cmd_help): Call grub_command_find to make
52355
	sure that each command is loaded.
52356
52357
	* genmk.rb (PModule::rule): Specify a module name without the
52358
	suffix ".mod" to gencmdlist.sh.
52359
52360
2005-03-02  Yoshinori K. Okuji  <okuji@enbug.org>
52361
52362
	* gencmdlist.sh: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52363
1.1.2 by Otavio Salvador
Import upstream version 1.92
52364
	* genmk.rb (PModule::rule): Generate a rule for a command list.
52365
	Clean command.lst.
52366
	Generate command.lst from $(COMMANDFILES).
52367
52368
	* Makefile.in (COMMON_DISTFILES): Added gencmdlist.sh.
52369
	(DATA): Added $(pkgdata_DATA).
52370
	(install-local): Install files in $(pkgdata_DATA).
52371
52372
2005-03-02  Yoshinori K. Okuji  <okuji@enbug.org>
52373
52374
	* term/i386/pc/vga.c (debug_command): Removed.
52375
	(GRUB_MOD_INIT): Do not register the command "debug".
52376
52377
	From Hollis Blanchard:
52378
	* commands/configfile.c: New file.
52379
	* conf/i386-pc.rmk (grub_emu_SOURCES): Added
52380
	commands/configfile.c.
52381
	(pkgdata_MODULES): Added configfile.mod.
52382
	(configfile_mod_SOURCES): New variable.
52383
	(configfile_mod_CFLAGS): Likewise.
52384
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added
52385
	commands/configfile.c.
52386
	(pkgdata_MODULES): Added configfile.mod.
52387
	(configfile_mod_SOURCES): New variable.
52388
	(configfile_mod_CFLAGS): Likewise.
52389
	* util/grub-emu.c (main): Call grub_configfile_init and
52390
	grub_configfile_fini.
52391
	* include/grub/normal.h [GRUB_UTIL] (grub_configfile_init): New
52392
	prototype.
52393
	[GRUB_UTIL] (grub_configfile_fini): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52394
1.1.2 by Otavio Salvador
Import upstream version 1.92
52395
2005-02-27  Yoshinori K. Okuji  <okuji@enbug.org>
52396
52397
	* normal/arg.c (grub_arg_show_help): Do not show the bug report
52398
	address.
52399
52400
	* commands/help.c (grub_cmd_help): Do not print newlines after
52401
	the last command in print_command_help.
52402
52403
2005-02-27  Yoshinori K. Okuji  <okuji@enbug.org>
52404
52405
	* commands/default.h: New file.
52406
	* commands/timeout.h: Likewise.
52407
	* normal/context.c: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52408
1.1.2 by Otavio Salvador
Import upstream version 1.92
52409
	* util/misc.c: Do not include sys/times.h.
52410
	Include sys/time.h and grub/machine/time.h.
52411
	(grub_get_rtc): Rewritten with gettimeofday.
52412
52413
	* util/grub-emu.c (main): Call grub_default_init and
52414
	grub_timeout_init before grub_normal_init, and call
52415
	grub_timeout_fini and grub_default_fini after grub_main.
52416
52417
	* util/console.c (grub_ncurses_checkkey): Return the read
52418
	character or -1.
52419
52420
	* normal/menu.c (run_menu): Set MENU->TIMEOUT to -1 once it
52421
	timeouts.
52422
52423
	* normal/main.c (read_config_file): Push MENU. If this fails,
52424
	print an error and wait for a user input.
52425
	Print an error only if GRUB_ERRNO is not GRUB_ERR_NONE.
52426
	If a menu is empty or an error occurs, pop MENU.
52427
	(grub_normal_execute): Pop and free MENU after grub_menu_run
52428
	returns.
52429
52430
	* kern/loader.c (grub_loader_boot): Call grub_machine_fini.
52431
52432
	* include/grub/powerpc/ieee1275/time.h [GRUB_UTIL]: Do not
52433
	include	time.h.
52434
	[GRUB_UTIL] (GRUB_TICKS_PER_SECOND): Use the same definition as
52435
	without GRUB_UTIL.
52436
	* include/grub/i386/pc/time.h [GRUB_UTIL]: Do not include
52437
	time.h.
52438
	[GRUB_UTIL] (GRUB_TICKS_PER_SECOND): Use the same definition as
52439
	without GRUB_UTIL.
52440
52441
	* include/grub/normal.h (struct grub_menu_list): New struct.
52442
	(grub_menu_list_t): New type.
52443
	(struct grub_context): New struct.
52444
	(grub_context_t): New type.
52445
	(grub_register_command): Got rid of EXPORT_FUNC.
52446
	(grub_unregister_command): Likewise.
52447
	(grub_context_get): New prototype.
52448
	(grub_context_get_current_menu): Likewise.
52449
	(grub_context_push_menu): Likewise.
52450
	(grub_context_pop_menu): Likewise.
52451
	[GRUB_UTIL] (grub_default_init): Likewise.
52452
	[GRUB_UTIL] (grub_default_fini): Likewise.
52453
	[GRUB_UTIL] (grub_timeout_init): Likewise.
52454
	[GRUB_UTIL] (grub_timeout_fini): Likewise.
52455
52456
	* conf/i386-pc.rmk (grub_emu_SOURCES): Added commands/default.c,
52457
	commands/timeout.c and normal/context.c.
52458
	(pkgdata_MODULES): Added default.mod and timeout.mod.
52459
	(normal_mod_SOURCES): Added normal/context.c.
52460
	(default_mod_SOURCES): New variable.
52461
	(default_mod_CFLAGS): Likewise.
52462
	(timeout_mod_SOURCES): Likewise.
52463
	(timeout_mod_CFLAGS): Likewise.
52464
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Copied from
52465
	conf/i386-pc.rmk.
52466
	(pkgdata_MODULES): Added default.mod and timeout.mod.
52467
	(normal_mod_SOURCES): Added normal/context.c.
52468
	(default_mod_SOURCES): New variable.
52469
	(default_mod_CFLAGS): Likewise.
52470
	(timeout_mod_SOURCES): Likewise.
52471
	(timeout_mod_CFLAGS): Likewise.
52472
52473
	* Makefile.in (all-local): Added $(MKFILES).
52474
52475
2005-02-21  Vincent Pelletier  <subdino2004@yahoo.fr>
52476
52477
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add `partmap/sun.c'.
52478
	(grub_emu_SOURCES): Likewise.
52479
	(pkgdata_MODULES): Add `sun.mod'.
52480
	(sun_mod_SOURCES, sun_mod_CFLAGS): New variables.
52481
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
52482
	`partmap/sun.c'.
52483
	(pkgdata_MODULES): Add `sun.mod'.
52484
	(sun_mod_SOURCES, sun_mod_CFLAGS): New variables.
52485
	* include/grub/partition.h (grub_sun_partition_map_init): New
52486
	prototype.
52487
	(grub_sun_partition_map_fini): Likewise.
52488
	* partmap/sun.c: New file.
52489
	* util/grub-emu.c (main): Initialize and de-initialize the sun
52490
	partitionmap support.
52491
52492
2005-02-19  Yoshinori K. Okuji  <okuji@enbug.org>
52493
52494
	This implements an Emacs-like menu entry editor.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52495
1.1.2 by Otavio Salvador
Import upstream version 1.92
52496
	* normal/menu_entry.c: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52497
1.1.2 by Otavio Salvador
Import upstream version 1.92
52498
	* util/console.c (grub_ncurses_putchar): Translate some Unicode
52499
	characters to ASCII.
52500
	(saved_char): New variable.
52501
	(grub_ncurses_checkkey): Rewritten completely.
52502
	(grub_ncurses_getkey): Likewise.
52503
	(grub_ncurses_init): Call raw instead of cbreak.
52504
52505
	* normal/menu.c (print_entry): Do not put a space.
52506
	(init_page): Renamed to ...
52507
	(grub_menu_init_page): ... this. All callers changed.
52508
	(edit_menu_entry): Removed.
52509
	(run_menu): Call grub_menu_entry_run instead of edit_menu_entry.
52510
52511
	* normal/cmdline.c (grub_cmdline_run): Call grub_setcursor.
52512
52513
	* kern/misc.c (grub_vprintf): Call grub_refresh.
52514
52515
	* normal/menu.c (DISP_LEFT): Renamed to ...
52516
	* include/grub/term.h (GRUB_TERM_DISP_LEFT): ... this.
52517
	* normal/menu.c (DISP_UP): Renamed to ...
52518
	* include/grub/term.h (GRUB_TERM_DISP_UP): ... this.
52519
	* normal/menu.c (DISP_RIGHT): Renamed to ...
52520
	* include/grub/term.h (GRUB_TERM_DISP_RIGHT): ... this.
52521
	* normal/menu.c (DISP_DOWN): Renamed to ...
52522
	* include/grub/term.h (GRUB_TERM_DISP_DOWN): ... this.
52523
	* normal/menu.c (DISP_HLINE): Renamed to ...
52524
	* include/grub/term.h (GRUB_TERM_DISP_HLINE): ... this.
52525
	* normal/menu.c (DISP_VLINE): Renamed to ...
52526
	* include/grub/term.h (GRUB_TERM_DISP_VLINE): ... this.
52527
	* normal/menu.c (DISP_UL): Renamed to ...
52528
	* include/grub/term.h (GRUB_TERM_DISP_UL): ... this.
52529
	* normal/menu.c (DISP_UR): Renamed to ...
52530
	* include/grub/term.h (GRUB_TERM_DISP_UR): ... this.
52531
	* normal/menu.c (DISP_LL): Renamed to ...
52532
	* include/grub/term.h (GRUB_TERM_DISP_LL): ... this.
52533
	* normal/menu.c (DISP_LR): Renamed to ...
52534
	* include/grub/term.h (GRUB_TERM_DISP_LR): ... this.
52535
	* normal/menu.c (TERM_WIDTH): Renamed to ...
52536
	* include/grub/term.h (GRUB_TERM_WIDTH): ... this.
52537
	* normal/menu.c (TERM_HEIGHT): Renamed to ...
52538
	* include/grub/term.h (GRUB_TERM_HEIGHT): ... this.
52539
	* normal/menu.c (TERM_INFO_HEIGHT): Renamed to ...
52540
	* include/grub/term.h (GRUB_TERM_INFO_HEIGHT): ... this.
52541
	* normal/menu.c (TERM_MARGIN): Renamed to ...
52542
	* include/grub/term.h (GRUB_TERM_MARGIN): ... this.
52543
	* normal/menu.c (TERM_SCROLL_WIDTH): Renamed to ...
52544
	* include/grub/term.h (GRUB_TERM_SCROLL_WIDTH): ... this.
52545
	* normal/menu.c (TERM_TOP_BORDER_Y): Renamed to ...
52546
	* include/grub/term.h (GRUB_TERM_TOP_BORDER_Y): ... this.
52547
	* normal/menu.c (TERM_LEFT_BORDER_X): Renamed to ...
52548
	* include/grub/term.h (GRUB_TERM_LEFT_BORDER_X): ... this.
52549
	* normal/menu.c (TERM_BORDER_WIDTH): Renamed to ...
52550
	* include/grub/term.h (GRUB_TERM_BORDER_WIDTH): ... this.
52551
	* normal/menu.c (TERM_MESSAGE_HEIGHT): Renamed to ...
52552
	* include/grub/term.h (GRUB_TERM_MESSAGE_HEIGHT): ... this.
52553
	* normal/menu.c (TERM_BORDER_HEIGHT): Renamed to ...
52554
	* include/grub/term.h (GRUB_TERM_BORDER_HEIGHT): ... this.
52555
	* normal/menu.c (TERM_NUM_ENTRIES): Renamed to ...
52556
	* include/grub/term.h (GRUB_TERM_NUM_ENTRIES): ... this.
52557
	* normal/menu.c (TERM_FIRST_ENTRY_Y): Renamed to ...
52558
	* include/grub/term.h (GRUB_TERM_FIRST_ENTRY_Y): ... this.
52559
	* normal/menu.c (TERM_ENTRY_WIDTH): Renamed to ...
52560
	* include/grub/term.h (GRUB_TERM_ENTRY_WIDTH): ... this.
52561
	* normal/menu.c (TERM_CURSOR_X): Renamed to ...
52562
	* include/grub/term.h (GRUB_TERM_CURSOR_X): ... this.
52563
	All callers changed.
52564
52565
	* include/grub/normal.h: New prototype.
52566
52567
	* conf/i386-pc.rmk (grub_emu_SOURCES): Added
52568
	normal/menu_entry.c.
52569
	(normal_mod_SOURCES): Likewise.
52570
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
52571
	(normal_mod_SOURCES): Likewise.
52572
52573
2005-02-15  Yoshinori K. Okuji  <okuji@enbug.org>
52574
52575
	* include/grub/normal.h (grub_halt_init): New prototype.
52576
	(grub_halt_fini): Likewise.
52577
	(grub_reboot_init): Likewise.
52578
	(grub_reboot_fini): Likewise.
52579
52580
	* util/grub-emu.c: Include signal.h.
52581
	(main_env): New global variable.
52582
	(grub_machine_init): Ignore SIGINT. Otherwise grub-emu cannot
52583
	catch C-c.
52584
	(grub_machine_fini): New function.
52585
	(main): Call grub_halt_init and grub_reboot_init before
52586
	grub_main, and grub_reboot_fini and grub_halt_fini after it.
52587
	Call setjmp with MAIN_ENV to go back afterwards.
52588
	Call grub_machine_fini right before return.
52589
52590
	* include/grub/util/misc.h: Include setjmp.h.
52591
	(main_env): New prototype.
52592
52593
	* include/grub/kernel.h (grub_machine_fini): New prototype.
52594
	* include/grub/i386/pc/biosdisk.h (grub_biosdisk_fini): Likewise.
52595
	* include/grub/i386/pc/console.h (grub_console_fini): Likewise.
52596
52597
	* disk/i386/pc/biosdisk.c (grub_biosdisk_fini): New function.
52598
	* kern/i386/pc/init.c (grub_machine_fini): Likewise.
52599
	* term/i386/pc/console.c (grub_console_fini): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52600
1.1.2 by Otavio Salvador
Import upstream version 1.92
52601
	* util/i386/pc/misc.c: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52602
1.1.2 by Otavio Salvador
Import upstream version 1.92
52603
	* conf/i386-pc.rmk (grub_emu_SOURCES): Added
52604
	util/i386/pc/misc.c, commands/i386/pc/halt.c and
52605
	commands/i386/pc/reboot.c.
52606
52607
2005-02-14  Guillem Jover  <guillem@hadrons.org>
52608
52609
	* include/grub/dl.h (grub_dl_check_header): New prototype.
52610
	(grub_arch_dl_check_header): Change return type to grub_err_t,
52611
	remove size parameter and export function.  Update all callers.
52612
	* kern/dl.c (grub_dl_check_header): New function.
52613
	(grub_dl_load_core): Use `grub_dl_check_header' instead of
52614
	`grub_arch_dl_check_header'.  Check ELF type.  Check if sections
52615
	are inside the core.
52616
	* kern/i386/dl.c (grub_arch_dl_check_header): Remove arch
52617
	independent ELF header checks.
52618
	* kern/powerpc/dl.c (grub_arch_dl_check_header): Likewise.
52619
	* loader/i386/pc/multiboot.c (grub_rescue_cmd_multiboot): Use
52620
	`grub_dl_check_header' instead of explicit checks.  Check for the
52621
	ELF type.
52622
	* loader/powerpc/ieee1275/linux.c (grub_rescue_cmd_linux): Use
52623
	`grub_dl_check_header' instead of explicit checks.  Remove arch
52624
	specific ELF header checks.
52625
52626
	* util/grub-emu.c (grub_arch_dl_check_header): Remove the
52627
	argument SIZE.
52628
52629
2005-02-13  Hollis Blanchard  <hollis@penguinppc.org>
52630
52631
	* conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Add ls.mod.
52632
	* include/grub/powerpc/libgcc.h (__mulsf3): New prototype.
52633
52634
2005-02-12  Hollis Blanchard  <hollis@penguinppc.org>
52635
52636
	* kern/partition.c (grub_partition_probe): Clear `grub_errno' and
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52637
	return 0 if `grub_errno' is GRUB_ERR_BAD_PART_TABLE.
1.1.2 by Otavio Salvador
Import upstream version 1.92
52638
	(part_map_iterate): Clear `grub_errno' and return 0 if
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52639
	`partmap->iterate' returns GRUB_ERR_BAD_PART_TABLE.
1.1.2 by Otavio Salvador
Import upstream version 1.92
52640
	* partmap/amiga.c (amiga_partition_map_iterate): Return
52641
	GRUB_ERR_BAD_PART_TABLE if no partition map magic is found.
52642
	* partmap/apple.c (apple_partition_map_iterate): Likewise.
52643
52644
2005-02-01  Guillem Jover  <guillem@hadrons.org>
52645
52646
	* loader/i386/pc/multiboot_normal.c (GRUB_MOD_INIT): Fix module
52647
	help info.
52648
52649
2005-01-31  Marco Gerards  <metgerards@student.han.nl>
52650
52651
	* include/grub/powerpc/ieee1275/loader.h (grub_load_linux):
52652
	Removed prototype.
52653
	(grub_rescue_cmd_linux): New prototype.
52654
	(grub_rescue_cmd_initrd): Likewise.
52655
	* powerpc/ieee1275/linux.c (grub_linux_boot): Remove struct
52656
	`bi_rec'.
52657
	(grub_linux_release_mem): Release the memory for the initrd.
52658
	(grub_load_linux): Renamed from this...
52659
	(grub_rescue_cmd_linux): ...To this.  Changed all callers.
52660
	Changed `entry' not to be static.  Loop over memory regions to
52661
	find another one when the default fails.
52662
	(grub_rescue_cmd_initrd): New function.
52663
	(grub_linux_init): Remove function.
52664
	(grub_linux_fini): Likewise.
52665
	(GRUB_MOD_INIT): Register `initrd'.
52666
	(GRUB_MOD_FINI): Unregister `initrd'.
52667
	* powerpc/ieee1275/linux_normal.c (grub_linux_normal_init):
52668
	Function removed.
52669
	(grub_linux_normal_fini): Likewise.
52670
	(GRUB_MOD_INIT): Register `initrd'.
52671
	(GRUB_MOD_FINI): Unregister `initrd'.
52672
52673
2005-01-31  Marco Gerards  <metgerards@student.han.nl>
52674
52675
	* commands/help.c: New file.
52676
	* normal/arg.c (show_help): Renamed to...
52677
	(grub_arg_show_help): ... this.
52678
	* commands/i386/pc/halt.c: New file.
52679
	* commands/i386/pc/reboot.c: Likewise.
52680
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/help.c'.
52681
	(pkgdata_MODULES): Add `reboot.mod', `halt.mod' and `help.mod'.
52682
	(help_mod_SOURCES, help_mod_CFLAGS, reboot_mod_SOURCES)
52683
	(reboot_mod_CFLAGS, halt_mod_SOURCES, halt_mod_CFLAGS): New
52684
	variables.
52685
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
52686
	`commands/help.c'.
52687
	(pkgdata_MODULES): Add `help.mod'.
52688
	(help_mod_SOURCES, help_mod_CFLAGS): New variables.
52689
	* grub/i386/pc/init.h (grub_reboot): New prototype.
52690
	(grub_halt): Likewise.
52691
	* include/grub/normal.h (grub_arg_show_help): New prototype.
52692
	(grub_help_init): Likewise.
52693
	(grub_help_fini): Likewise.
52694
	* util/grub-emu.c (main): Initialize and deinitialize the help
52695
	command.
52696
52697
	* normal/cmdline.c (grub_cmdline_get): Doc fix.
52698
52699
	* normal/command.c (grub_command_init): Fixed the description of
52700
	the `set' and `unset' commands.
52701
52702
2005-01-31  Marco Gerards  <metgerards@student.han.nl>
52703
52704
	* boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_interpret): New
52705
	function.
52706
	* commands/ieee1275/halt.c: New file.
52707
	* commands/ieee1275/reboot.c: Likewise.
52708
	* commands/ieee1275/suspend.c (grub_cmd_suspend): Use
52709
	`__attribute__ ((unused))'.  Some GCS related fixed.
52710
	(grub_suspend_init) [GRUB_UTIL]: Function removed.
52711
	(grub_suspend_fini): Likewise.
52712
	* conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Add `reboot.mod'
52713
	and `halt.mod'.
52714
	(reboot_mod_SOURCES, reboot_mod_CFLAGS, halt_mod_SOURCES)
52715
	(halt_mod_CFLAGS): New variables.
52716
	* include/grub/powerpc/ieee1275/ieee1275.h
52717
	(grub_ieee1275_interpret): New prototype.
52718
52719
2005-01-29  Yoshinori K. Okuji  <okuji@enbug.org>
52720
52721
	* include/grub/misc.h (memmove): New prototype.
52722
	(memcpy): Likewise.
52723
52724
2005-01-22  Hollis Blanchard  <hollis@penguinppc.org>
52725
52726
	* disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_open): Don't initialize
52727
	`devpath' to 0.  Use `name' instead of `devpath' with `grub_strndup'.
52728
52729
2005-01-22  Marco Gerards  <metgerards@student.han.nl>
52730
52731
	* kern/misc.c (grub_strndup): Function rewritten.
52732
52733
2005-01-22  Vincent Pelletier  <subdino2004@yahoo.fr>
52734
52735
	* normal/menu.c (TERM_WIDTH): Macro redefined.
52736
	(TERM_TOP_BORDER_Y): Likewise.
52737
	(draw_border): Replaced while-loop by a for-loop.  Make the number
52738
	of lines consistent with the number of lines displayed in
52739
	print_entries.  Added a margin below the rectangle.
52740
	(print_entry): Make the entry fit in the rectangle.
52741
	(print_entries): Display the scroll arrows next to the right
52742
	border.
52743
52744
2005-01-21  Marco Gerards  <metgerards@student.han.nl>
52745
52746
	* fs/minix.c (grub_minix_find_file): Reserve more space for
52747
	`fpath' so the \0 can be stored.  Use `grub_strcpy' instead of
52748
	`grub_strncpy' to copy `path' into it.
52749
52750
2005-01-21  Marco Gerards  <metgerards@student.han.nl>
52751
52752
	Add the loopback device, a device via which files can be accessed
52753
	as devices.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52754
1.1.2 by Otavio Salvador
Import upstream version 1.92
52755
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/loopback.c'.
52756
	(pkgdata_MODULES): Add loopback.mod.
52757
	(loopback_mod_SOURCES): New variable.
52758
	(loopback_mod_CFLAGS): Likewise.
52759
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
52760
	`disk/loopback.c'.
52761
	(pkgdata_MODULES): Add loopback.mod.
52762
	(loopback_mod_SOURCES): New variable.
52763
	(loopback_mod_CFLAGS): Likewise.
52764
	* disk/loopback.c: new file.
52765
	* include/grub/normal.h (grub_loop_init): New prototype.
52766
	(grub_loop_fini): New prototype.
52767
	* util/grub-emu.c (main): Initialize and de-initialize loopback
52768
	support.
52769
	* include/grub/disk.h (grub_disk_dev_id): Add
52770
	`GRUB_DISK_DEVICE_LOOPBACK_ID'.
52771
52772
2005-01-20  Hollis Blanchard  <hollis@penguinppc.org>
52773
52774
	* boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_enter): New
52775
	function.
52776
	* conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Add suspend.mod.
52777
	(suspend_mod_SOURCES): New variable.
52778
	(suspend_mod_CFLAGS): Likewise.
52779
	* include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_enter):
52780
	New prototype.
52781
	* commands/ieee1275/suspend.c: New file.
52782
52783
2005-01-20  Timothy Baldwin  <T.E.Baldwin99@members.leeds.ac.uk>
52784
52785
	* include/grub/dl.h (GRUB_MOD_INIT): Changed `__attribute__
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
52786
	((unused))' to `__attribute__ ((used))'.
1.1.2 by Otavio Salvador
Import upstream version 1.92
52787
	(GRUB_MOD_FINI): Likewise.
52788
	* kern/dl.c (grub_dl_load_file): Fix null pointer dereference.
52789
	* genmk.rb (PModule): Assign space to common symbols when linking
52790
	modules.
52791
52792
2005-01-20  Marco Gerards  <metgerards@student.han.nl>
52793
52794
	* include/grub/mm.h (grub_mm_init_region): Change the type of the
52795
	`unsigned' arguments to `grub_size_t'.
52796
	(grub_malloc): Likewise.
52797
	(grub_realloc): Likewise.
52798
	(grub_memalign): Likewise.
52799
	* kern/i386/dl.c (grub_arch_dl_check_header): Likewise.
52800
	* kern/powerpc/dl.c (grub_arch_dl_check_header): Likewise.
52801
	* util/misc.c (grub_malloc): Likewise.
52802
	(grub_realloc): Likewise.
52803
	* kern/mm.c (get_header_from_pointer): Change the casts to
52804
	`unsigned' into a cast to `grub_size_t'.
52805
52806
	* fs/fshelp.c (grub_fshelp_find_file): The `oldnode' should always
52807
	point to `currnode' when `currnode' is changed.
52808
52809
	* util/grub-emu.c (main): Initialize `progname'.  Reported by Nico
52810
	Schottelius <nico-linux@schottelius.org>.
52811
52812
2005-01-09  Hollis Blanchard  <hollis@penguinppc.org>
52813
52814
	* util/powerpc/ieee1275/grub-mkimage.c: Include <string.h>.
52815
	(note_path): Remove variable.
52816
	(GRUB_IEEE1275_NOTE_NAME): New macro.
52817
	(GRUB_IEEE1275_NOTE_TYPE): Likewise.
52818
	(grub_ieee1275_note_hdr): New structure.
52819
	(grub_ieee1275_note_desc): Likewise.
52820
	(grub_ieee1275_note): Likewise.
52821
	(load_note): Remove `dir' argument.  All callers updated.  Remove
52822
	`note_img' and `path'.  Do not load a file from `note_path'.
52823
	Initialize a struct grub_ieee1275_note and write that to `out'.
52824
	Use GRUB_IEEE1275_MODULE_BASE instead of MODULE_BASE.
52825
52826
2005-01-05  Marco Gerards  <metgerards@student.han.nl>
52827
52828
	* util/misc.c (grub_util_read_image): Revert last change.  It
52829
	called `grub_util_read_at', which seeks from the beginning of the
52830
	file.
52831
52832
2005-01-04  Hollis Blanchard  <hollis@penguinppc.org>
52833
52834
	* TODO: Add note about endianness in grub-mkimage.
52835
	* boot/powerpc/ieee1275/crt0.S (note): Remove unused .note
52836
	section.
52837
	* conf/powerpc-ieee1275.rmk (bin_UTILITIES): Add grub-mkimage.
52838
	(grub_mkimage_SOURCES): New target.
52839
	* include/grub/kernel.h (grub_start_addr): Remove variable.
52840
	(grub_end_addr): Likewise.
52841
	(grub_total_module_size): Likewise.
52842
	(grub_kernel_image_size): Likewise.
52843
	(GRUB_MODULE_MAGIC): New constant.
52844
	(grub_module_info): New structure.
52845
	(grub_arch_modules_addr): New prototype.
52846
	(grub_get_end_addr): Remove prototype.
52847
	* include/grub/i386/pc/kernel.h (grub_end_addr): New prototype.
52848
	* include/grub/powerpc/ieee1275/kernel.h: New file.
52849
	* include/grub/util/misc.h (grub_util_get_fp_size): New
52850
	prototype.
52851
	(grub_util_read_at): Likewise.
52852
	(grub_util_write_image_at): Likewise.
52853
	* kern/main.c (grub_get_end_addr): Remove function.
52854
	(grub_load_modules): Call grub_arch_modules_addr instead of using
52855
	grub_end_addr.  Look for a grub_module_info struct in memory.  Use
52856
	the grub_module_info fields instead of calling grub_get_end_addr
52857
	as loop conditions.  Move grub_add_unused_region code here.
52858
	(grub_add_unused_region): Remove function.
52859
	* kern/i386/pc/init.c: Include grub/cache.h.
52860
	(grub_machine_init): Remove call to grub_get_end_addr.  Remove
52861
	one call to add_mem_region.
52862
	(grub_arch_modules_addr): New function.
52863
	* kern/powerpc/ieee1275/init.c (grub_end_addr): Remove variable.
52864
	(grub_total_module_size): Likewise.
52865
	Include grub/machine/kernel.h.
52866
	(grub_arch_modules_addr): New function.
52867
	* util/grub-emu.c (grub_end_addr): Remove variable.
52868
	(grub_total_module_size): Likewise.
52869
	(grub_arch_modules_addr): New function.
52870
	* util/misc.c: Include unistd.h.
52871
	(grub_util_get_fp_size): New function.
52872
	(grub_util_read_at): Likewise.
52873
	(grub_util_write_image_at): Likewise.
52874
	(grub_util_read_image): Call grub_util_read_at.
52875
	(grub_util_write_image): Call grub_util_write_image_at.
52876
	* util/i386/pc/grub-mkimage.c (generate_image): Allocate
52877
	additional memory in kernel_img for a struct grub_module_info.
52878
	Fill in that grub_module_info.
52879
	* util/powerpc/ieee1275/grub-mkimage.c: New file.
52880
52881
2005-01-03  Hollis Blanchard  <hollis@penguinppc.org>
52882
52883
	* boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_milliseconds):
52884
	New function.
52885
	* include/grub/powerpc/ieee1275/ieee1275.h
52886
	(grub_ieee1275_milliseconds): New prototype.
52887
	* include/grub/powerpc/ieee1275/time.h (GRUB_TICKS_PER_SECOND):
52888
	Change to 1000.
52889
	* kern/powerpc/ieee1275/init.c (grub_get_rtc): Call
52890
	grub_ieee1275_milliseconds.
52891
52892
2005-01-03  Hollis Blanchard  <hollis@penguinppc.org>
52893
52894
	* boot/powerpc/ieee1275/cmain.c (grub_ieee1275_realmode): New
52895
	variable.
52896
	(find_options): New function.
52897
	(cmain): Call find_options.
52898
	* include/grub/powerpc/ieee1275/ieee1275.h
52899
	(grub_ieee1275_realmode): New extern variable.
52900
	* kern/powerpc/ieee1275/openfw.c (grub_claimmap): Only call
52901
	grub_map if grub_ieee1275_realmode is false.
52902
52903
2004-12-29  Marco Gerards  <metgerards@student.han.nl>
52904
52905
	* normal/cmdline.c (grub_cmdline_get): Redone logic so no empty
52906
	lines are inserted and make it work like readline.  Reported by
52907
	Vincent Pelletier <subdino2004@yahoo.fr>.
52908
52909
2004-12-28  Marco Gerards  <metgerards@student.han.nl>
52910
52911
	* boot/powerpc/ieee1275/crt0.S (_start): Don't set up the stack.
52912
52913
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCE): Remove
52914
	`kern/powerpc/cache.S'.
52915
52916
2004-12-27  Marco Gerards  <metgerards@student.han.nl>
52917
52918
	* genmk.rb: Handle the `Program' class in the main loop.  Written
52919
	by Johan Rydberg <jrydberg@gnu.org>.
52920
	(Program): New class.
52921
	(programs): New variable.
52922
	* boot/powerpc/ieee1275/cmain.c: Include <grub/machine/ieee1275.h>
52923
	instead of "grub/machine/ieee1275.h".  Include <grub/kernel.h>
52924
	instead of "grub/kernel.h".  Include <grub/machine/init.h>.
52925
	(help_arch): Function removed.
52926
	* conf/powerpc-ieee1275.rmk (grubof_HEADERS): Add
52927
	`powerpc/libgcc.h' and `loader.h'.
52928
	(pkgdata_PROGRAMS): New variable.
52929
	(sbin_UTILITIES): Variable removed.
52930
	(grub_emu_SOURCES): Added kern/powerpc/cache.S.
52931
	(grubof_SOURCES): Variable re-defined so it only includes the
52932
	core functionality.
52933
	(grubof_CFLAGS): Remove `-DGRUBOF'.
52934
	(pkgdata_MODULES, fshelp_mod_SOURCES, fshelp_mod_CFLAGS,
52935
	(fat_mod_SOURCES, fat_mod_CFLAGS, ext2_mod_SOURCES)
52936
	(ext2_mod_CFLAGS, ufs_mod_SOURCES, ufs_mod_CFLAGS)
52937
	(minix_mod_SOURCES, minix_mod_CFLAGS, hfs_mod_SOURCES)
52938
	(hfs_mod_CFLAGS, jfs_mod_SOURCES, jfs_mod_CFLAGS)
52939
	(iso9660_mod_SOURCES, iso9660_mod_CFLAGS, _linux_mod_SOURCES)
52940
	(_linux_mod_CFLAGS, linux_mod_SOURCES, linux_mod_CFLAGS)
52941
	(normal_mod_SOURCES, normal_mod_CFLAGS, normal_mod_ASFLAGS)
52942
	(hello_mod_SOURCES, hello_mod_CFLAGS, boot_mod_SOURCES)
52943
	(boot_mod_CFLAGS, terminal_mod_SOURCES, terminal_mod_CFLAGS)
52944
	(ls_mod_SOURCES, ls_mod_CFLAGS, cmp_mod_SOURCES, cmp_mod_CFLAGS)
52945
	(cat_mod_SOURCES, cat_mod_CFLAGS, font_mod_SOURCES)
52946
	(font_mod_CFLAGS, amiga_mod_SOURCES, amiga_mod_CFLAGS)
52947
	(apple_mod_SOURCES, apple_mod_CFLAGS, pc_mod_SOURCES)
52948
	(pc_mod_CFLAGS): New variables.
52949
	* disk/powerpc/ieee1275/ofdisk.c: Include <grub/machine/init.h>.
52950
	(grub_ofdisk_iterate): Add a prototype for `dev_iterate'.
52951
	* include/grub/dl.h (grub_arch_dl_sync_caches): New prototype.
52952
	* include/grub/loader.h (grub_os_area_addr, grub_os_area_size):
52953
	Moved from here...
52954
	* include/grub/i386/pc/init.h (grub_os_area_addr)
52955
	(rub_os_area_size): ... to here.
52956
	* include/grub/powerpc/ieee1275/ieee1275.h
52957
	(grub_ieee1275_entry_fn): Export symbol.
52958
	* include/grub/powerpc/ieee1275/init.h: New file.
52959
	* include/grub/powerpc/libgcc.h: Likewise.
52960
	* include/grub/cache.h: Likewise.
52961
	* kern/powerpc/cache.S: Likewise.  Written by Hollis Blanchard
52962
	<hollis@penguinppc.org>.
52963
	* kern/dl.c: Include <grub/cache.h>.
52964
	(grub_dl_flush_cache): New function.
52965
	(grub_dl_load_core): Call `grub_dl_flush_cache' to flush the cache
52966
	for this module.
52967
	* kern/powerpc/ieee1275/init.c (grub_ofdisk_init)
52968
	(grub_console_init): Removed prototypes.
52969
	(grub_machine_init): Don't initialize the modules anymore.
52970
	* kern/powerpc/ieee1275/openfw.c (grub_map): Make the function
52971
	static.
52972
	* include/grub/powerpc/types.h (GRUB_HOST_WORDS_LITTLEENDIAN):
52973
	Macro undef removed.
52974
	(GRUB_HOST_WORDS_BIGENDIAN): New macro.
52975
	* kern/powerpc/dl.c (grub_arch_dl_relocate_symbols): Add
52976
	relocation `R_PPC_REL32'.  Return an error when the relocation is
52977
	unknown.
52978
	* Makefile.in (DATA): Add `$(pkgdata_PROGRAMS)'.
52979
	* kern/i386/pc/init.c (grub_arch_sync_caches): New function.
52980
	* util/misc.c (grub_arch_sync_caches): Likewise.
52981
52982
2004-12-19  Marco Gerards  <metgerards@student.han.nl>
52983
52984
	* conf/powerpc-ieee1275.rmk (MOSTLYCLEANFILES): Remove
52985
	`symlist.c', add `grubof_symlist.c'.
52986
	(symlist.c): Variable removed.
52987
	(grubof_HEADERS): Variable added.
52988
	(grubof_symlist.c): New target.
52989
	(kernel_syms.lst): Use `grubof_HEADERS' instead of
52990
	`kernel_img_HEADERS'.
52991
	(grubof_SOURCES): Add `kern/powerpc/dl.c' and `grubof_symlist.c'.
52992
	* kern/powerpc/dl.c: New file.
52993
	* kern/powerpc/ieee1275/init.c (grub_arch_dl_check_header):
52994
	Function removed.
52995
	(grub_arch_dl_relocate_symbols): Likewise.
52996
	(grub_register_exported_symbols): Likewise.
52997
52998
2004-12-13  Marco Gerards  <metgerards@student.han.nl>
52999
53000
	* fs/ext2.c (grub_ext2_open): Don't use data after freeing it.
53001
	(grub_ext2_dir): Likewise.  Don't return in case of an error, jump
53002
	to fail instead.  Reported by Vincent Pelletier
53003
	<subdino2004@yahoo.fr>.
53004
53005
	* fs/fshelp.c (grub_fshelp_find_file): Don't free `oldnode' when
53006
	it is not allocated.  Reported by Vincent Pelletier
53007
	<subdino2004@yahoo.fr>.
53008
53009
	* normal/cmdline.c (grub_tab_complete): Add a blank line to the
53010
	output so the output looks better.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53011
1.1.2 by Otavio Salvador
Import upstream version 1.92
53012
2004-12-04  Marco Gerards  <metgerards@student.han.nl>
53013
53014
	Modulize the partition map support and add support for the amiga
53015
	partition map.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53016
1.1.2 by Otavio Salvador
Import upstream version 1.92
53017
	* commands/ls.c: Include <grub/partition.h> instead of
53018
	<grub/machine/partition.h>.
53019
	* kern/disk.c: Likewise.
53020
	* kern/rescue.c: Likewise.
53021
	* loader/i386/pc/chainloader.c: Likewise.
53022
	* normal/cmdline.c: Likewise.
53023
	* kern/powerpc/ieee1275/init.c: Likewise.
53024
	(grub_machine_init): Call `grub_pc_partition_map_init',
53025
	`grub_amiga_partition_map_init' and
53026
	`grub_apple_partition_map_init'.
53027
	* conf/i386-pc.rmk (kernel_img_SOURCES): Remove
53028
	`disk/i386/pc/partition.c'.  Add `kern/partition.c'.
53029
	(kernel_img_HEADERS): Remove `machine/partition.h'.  Add
53030
	`partition.h' and `pc_partition.h'.
53031
	(grub_setup_SOURCES): Remove
53032
	`disk/i386/pc/partition.c'.  Add `kern/partition.c',
53033
	`partmap/amiga.c', `partmap/apple.c' and `partmap/pc.c'.
53034
	(grub_emu_SOURCES): Likewise.
53035
	(pkgdata_MODULES): Add `amiga.mod', `apple.mod' and `pc.mod'.
53036
	(amiga_mod_SOURCES, amiga_mod_CFLAGS, apple_mod_SOURCES)
53037
	(apple_mod_CFLAGS, pc_mod_SOURCES, pc_mod_CFLAGS): New variables.
53038
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Remove
53039
	`disk/powerpc/ieee1275/partition.c'.  Add `kern/partition.c',
53040
	`partmap/amiga.c', `partmap/apple.c' and `partmap/pc.c'.
53041
	(grubof_SOURCES): Likewise.
53042
	* disk/i386/pc/partition.c: File removed.
53043
	* disk/powerpc/ieee1275/partition.c: Likewise.
53044
	* include/grub/powerpc/ieee1275/partition.h: Likewise.
53045
	* include/grub/i386/pc/partition.h: Likewise.
53046
	* kern/partition.c: New file.
53047
	* partmap/amiga.c: Likewise.
53048
	* partmap/apple.c: Likewise.
53049
	* partmap/pc.c: Likewise.
53050
	* include/grub/partition.h: Likewise..
53051
	* include/grub/pc_partition.h: Likewise.
53052
	* util/grub-emu.c: Include <grub/partition.h> instead of
53053
	<grub/machine/partition.h>.
53054
	(main): Call `grub_pc_partition_map_init',
53055
	`grub_amiga_partition_map_init' and
53056
	`grub_apple_partition_map_init' and deinitialize afterwards.
53057
	* util/i386/pc/biosdisk.c: Include `#include
53058
	<grub/partition.h>' and `include <grub/pc_partition.h>' instead of
53059
	`<grub/machine/partition.h>'.
53060
	* util/i386/pc/grub-setup.c: Likewise.
53061
	* util/i386/pc/biosdisk.c: Likewise.
53062
	(grub_util_biosdisk_get_grub_dev): Only access the PC specific
53063
	partition information in case of a PC partition.
53064
	* util/i386/pc/grub-setup.c: Include `#include
53065
	<grub/partition.h>' and `include <grub/pc_partition.h>' instead of
53066
	`<grub/machine/partition.h>'.
53067
	(setup): Only access the PC specific partition information in case
53068
	of a PC partition.
53069
53070
2004-11-17  Hollis Blanchard  <hollis@penguinppc.org>
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53071
1.1.2 by Otavio Salvador
Import upstream version 1.92
53072
	* kern/powerpc/ieee1275/init.c (grub_setjmp): Remove function.
53073
	(grub_longjmp): Likewise.
53074
	* include/grub/powerpc/setjmp.h (grub_jmp_buf): Set array size to
53075
	20.
53076
	* normal/powerpc/setjmp.S: New file.
53077
	* conf/powerpc-ieee1275.rmk (grubof_SOURCES): Add
53078
	`normal/powerpc/setjmp.S'.
53079
	(grubof_CFLAGS): Add `-DGRUBOF'.
53080
	* include/grub/setjmp.h [GRUB_UTIL]: Changed condition to
53081
	[GRUB_UTIL && !GRUBOF].
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53082
1.1.2 by Otavio Salvador
Import upstream version 1.92
53083
2004-11-16  Marco Gerards  <metgerards@student.han.nl>
53084
53085
	* kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Skip any
53086
	property named `name'.  Correctly handle the error returned by
53087
	`grub_ieee1275_finddevice' if a device can not be opened.
53088
53089
2004-11-02  Hollis Blanchard  <hollis@penguinppc.org>
53090
53091
	* term/powerpc/ieee1275/ofconsole.c (grub_ofconsole_readkey): Test
53092
	`actual' for negativity.
53093
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Remove
53094
	kern/fshelp.c.
53095
53096
2004-11-01  Marco Gerards  <metgerards@student.han.nl>
53097
53098
	* term/i386/pc/vga.c (VGA_HEIGHT): Changed to 350.
53099
	(PAGE_OFFSET): New macro.
53100
	(CRTC_ADDR_PORT): Likewise.
53101
	(CRTC_DATA_PORT): Likewise.
53102
	(START_ADDR_HIGH_REGISTER): Likewise.
53103
	(START_ADDR_LOW_REGISTER): Likewise.
53104
	(GRAPHICS_ADDR_PORT): Likewise.
53105
	(GRAPHICS_DATA_PORT): Likewise.
53106
	(READ_MAP_REGISTER): Likewise.
53107
	(INPUT_STATUS1_REGISTER): Likewise.
53108
	(INPUT_STATUS1_VERTR_BIT): Likewise.
53109
	(page): New variable.
53110
	(wait_vretrace): New function.
53111
	(set_read_map): Likewise.
53112
	(set_start_address): Likewise.
53113
	(grub_vga_init): Use mode 0x10 instead of mode 0x12.  Switch to
53114
	the right page.
53115
	(check_vga_mem): Take the page into account.
53116
	(write_char): Likewise.
53117
	(write_cursor): Likewise.
53118
	(scroll_up): Likewise.  Copy the page to the page that is not
53119
	shown and switch between both pages.
53120
	(grub_vga_putchar): Fix off by one error.
53121
	(grub_vga_cls): Wait for the vertical retrace.  Take the page into
53122
	account.
53123
53124
2004-11-01  Marco Gerards  <metgerards@student.han.nl>
53125
53126
	Add support for iso9660 (including rockridge).
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53127
1.1.2 by Otavio Salvador
Import upstream version 1.92
53128
	* conf/i386-pc.rmk (grub_emu_SOURCES): Add fs/iso9660.c.
53129
	(iso9660_mod_SOURCES): New variable.
53130
	(iso9660_mod_CFLAGS): Likewise.
53131
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs/iso9660.c.
53132
	* include/grub/fs.h (grub_iso9660_init): New prototype.
53133
	* util/grub-emu.c (main): Call `grub_iso9660_init'.
53134
	* fs/iso9660.c: New file.
53135
53136
	* include/grub/misc.h (grub_strncat): New prototype.
53137
	* kern/misc.c (grub_strncat): New function.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53138
1.1.2 by Otavio Salvador
Import upstream version 1.92
53139
	* fs/hfs.c (grub_hfs_mount): Translate the error
53140
	`GRUB_ERR_OUT_OF_RANGE' to `GRUB_ERR_BAD_FS'.
53141
	* fs/jfs.c (grub_jfs_mount): Likewise.
53142
	* fs/ufs.c (grub_ufs_mount): Likewise.
53143
53144
2004-10-28  Hollis Blanchard  <hollis@penguinppc.org>
53145
53146
	* boot/powerpc/ieee1275/cmain.c (cmain): Remove asm statements
53147
	which initialized BAT registers.
53148
	* boot/powerpc/ieee1275/ieee1275.c (IEEE1275_CALL_ENTRY_FN,
53149
	grub_ieee1275_common_hdr, INIT_IEEE1275_COMMON):
53150
	Move from here...
53151
	* include/grub/powerpc/ieee1275/ieee1275.h (IEEE1275_CALL_ENTRY_FN,
53152
	grub_ieee1275_common_hdr, INIT_IEEE1275_COMMON):
53153
	... to here.
53154
	* kern/powerpc/ieee1275/openfw.c (grub_map): New function.
53155
	(grub_mapclaim): Likewise.
53156
	* loader/powerpc/ieee1275/linux.c (grub_load_linux): Use
53157
	grub_mapclaim instead of grub_ieee1275_claim.  Assign linux_addr by
53158
	hand.
53159
53160
2004-10-19  Hollis Blanchard  <hollis@penguinppc.org>
53161
53162
	* conf/powerpc-ieee1275.rmk (COMMON_ASFLAGS): Remove -fno-builtin.
53163
	(COMMON_CFLAGS): Remove -fno-builtin and -D__ASSEMBLY__. Add
53164
	-ffreestanding and -msoft-float.
53165
53166
2004-10-15  Hollis Blanchard  <hollis@penguinppc.org>
53167
53168
	* disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_open): Do not
53169
	append ":0" to devpath if the GRUB_IEEE1275_NO_PARTITION_0 flag is
53170
	set in grub_ieee1275_flags.
53171
53172
2004-10-14  Hollis Blanchard  <hollis@penguinppc.org>
53173
53174
	* include/grub/powerpc/ieee1275/ieee1275.h (abort): Add function
53175
	prototype.
53176
	* kern/powerpc/ieee1275/init.c (grub_machine_init): Call
53177
	grub_console_init first.
53178
	Change the memory range used for grub_ieee1275_claim and
53179
	grub_mm_init_region.
53180
	Print an error message if the claim fails.
53181
	Include <grub/misc.h>.
53182
53183
2004-10-13  Hollis Blanchard  <hollis@penguinppc.org>
53184
53185
	* disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_iterate):
53186
	Call grub_children_iterate for device nodes of type `scsi',
53187
	`ide', or `ata'.
53188
	(grub_ofdisk_open): Remove manual device alias resolution.
53189
	Fix memory leak when device cannot be opened.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53190
	* include/grub/powerpc/ieee1275/ieee1275.h
1.1.2 by Otavio Salvador
Import upstream version 1.92
53191
	(grub_children_iterate): New prototype.
53192
	* kern/powerpc/ieee1275/openfw.c (grub_children_iterate):
53193
	New function.
53194
	* boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_get_property):
53195
	Return -1 if args.size was -1.
53196
53197
2004-10-11  Hollis Blanchard  <hollis@penguinppc.org>
53198
53199
	* boot/powerpc/ieee1275/cmain.c (grub_ieee1275_flags): New global.
53200
	(cmain): Accept 3 parameters. Test for 0xdeadbeef, indicating Old
53201
	World Macintosh. If Old Wold, set flag in grub_ieee1275_flags; claim
53202
	Open Firmware's memory for it; claim memory from _start to _end.
53203
	* boot/powerpc/ieee1275/crt0.S (__bss_start): New extern.
53204
	(_end): New extern.
53205
	(_start): Zero BSS from __bss_start to _end.
53206
	* include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_flags):
53207
	New extern.
53208
	(GRUB_IEEE1275_NO_PARTITION_0): New #define.
53209
53210
2004-10-11  Hollis Blanchard  <hollis@penguinppc.org>
53211
53212
	* boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_claim): Return
53213
	-1 if args.base was -1.
53214
53215
2004-10-08  Hollis Blanchard  <hollis@penguinppc.org>
53216
53217
	* term/powerpc/ieee1275/ieee1275.c (grub_ofconsole_cls): Use an ANSI
53218
	escape sequence instead of a literal ^L. Also call
53219
	grub_ofconsole_gotoxy.
53220
53221
2004-10-03  Hollis Blanchard  <hollis@penguinppc.org>
53222
53223
	* boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_claim): change
53224
	void *	arguments to grub_addr_t.  All callers updated.  Also make
53225
	the `result' argument optional.
53226
	(grub_ieee1275_release): change void * arguments to grub_addr_t.
53227
	All callers updated.
53228
53229
2004-09-22  Hollis Blanchard  <hollis@penguinppc.org>
53230
53231
	* commands/ls.c (grub_ls_list_files): Use the string following the
53232
	initial ')', if present, as the filesystem path.
53233
	* kern/rescue.c (grub_rescue_cmd_ls): Likewise.
53234
53235
	* conf/powerpc-ieee1275.rmk (grubof_SOURCES): List crt0.S first.
53236
53237
2004-09-18  Yoshinori K. Okuji  <okuji@enbug.org>
53238
53239
	Make the source code of the menu interface more readable.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53240
1.1.2 by Otavio Salvador
Import upstream version 1.92
53241
	* normal/menu.c: Include grub/mm.h.
53242
	(TERM_WIDTH): New macro.
53243
	(TERM_HEIGHT): Likewise.
53244
	(TERM_INFO_HEIGHT): Likewise.
53245
	(TERM_MARGIN): Likewise.
53246
	(TERM_SCROLL_WIDTH): Likewise.
53247
	(TERM_TOP_BORDER_Y): Likewise.
53248
	(TERM_LEFT_BORDER_X): Likewise.
53249
	(TERM_BORDER_WIDTH): Likewise.
53250
	(TERM_MESSAGE_HEIGHT): Likewise.
53251
	(TERM_BORDER_HEIGHT): Likewise.
53252
	(TERM_NUM_ENTRIES): Likewise.
53253
	(TERM_FIRST_ENTRY_Y): Likewise.
53254
	(TERM_ENTRY_WIDTH): Likewise.
53255
	(TERM_CURSOR_X): Likewise.
53256
	(draw_border): Use macros instead of magic numbers.
53257
	(print_entry): Likewise.
53258
	(print_entries): Likewise.
53259
	(run_menu): Likewise. Also, handle the key 'e'.
53260
	(run_menu_entry): Ignore empty command lines.
53261
	(print_message): Added a new argument EDIT. If EDIT is true,
53262
	print a different message.
53263
	(init_page): Likewise.
53264
	(edit_menu_entry): New function. Not implemented yet.
53265
53266
2004-09-17  Marco Gerards  <metgerards@student.han.nl>
53267
53268
	Add `linux.mod' and `multiboot.mod' so linux and multiboot kernels
53269
	can be loaded from normal mode.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53270
1.1.2 by Otavio Salvador
Import upstream version 1.92
53271
	* conf/i386-pc.rmk (pkgdata_MODULES): Add `linux.mod' and
53272
	`multiboot.mod'.
53273
	(linux_mod_SOURCES, linux_mod_CFLAGS, multiboot_mod_SOURCES)
53274
	(multiboot_mod_CFLAGS): New variables.
53275
	* loader/i386/pc/linux_normal.c: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53276
	* loader/i386/pc/multiboot_normal.c: Likewise.
53277
1.1.2 by Otavio Salvador
Import upstream version 1.92
53278
	* loader/i386/pc/linux.c (grub_rescue_cmd_initrd): Don't use the
53279
	attribute `unused'.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53280
1.1.2 by Otavio Salvador
Import upstream version 1.92
53281
	* fs/ext2.c (grub_ext2_iterate_dir): Fix typos in inode type.  Use
53282
	`fdiro' to read the mode information from instead of `diro'.
53283
53284
	* fs/fshelp.c (grub_fshelp_find_file): Set type to foundtype after
53285
	looking up a symlink.
53286
53287
	* include/grub/normal.h (GRUB_COMMAND_FLAG_NO_ARG_PARSE): New
53288
	macro.
53289
	* normal/command.c (grub_command_execute): Don't parse the
53290
	arguments when `GRUB_COMMAND_FLAG_NO_ARG_PARSE' is set in the
53291
	flags of the command.
53292
53293
	* normal/menu.c (grub_menu_run): Fix typo.
53294
53295
2004-09-14  Hollis Blanchard  <hollis@penguinppc.org>
53296
53297
	* kern/powerpc/ieee1275/init.c (abort): Trap into Open Firmware.
53298
53299
	* term/powerpc/ieee1275/ofconsole.c (grub_ofconsole_gotoxy): Use
53300
	`y + 1' instead of `y - 1'.
53301
53302
	* conf/powerpc-ieee1275.rmk (grubof_LDFLAGS): Add `-N' and `-S'.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53303
1.1.2 by Otavio Salvador
Import upstream version 1.92
53304
2004-09-14  Yoshinori K. Okuji  <okuji@enbug.org>
53305
53306
	From Hollis Blanchard <hollis@penguinppc.org>:
53307
	* kern/misc.c (memmove): New alias for grub_memmove.
53308
	(memcmp): New alias for grub_memcmp.
53309
	(memset): New alias for grub_memset.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53310
	* boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_get_property):
1.1.2 by Otavio Salvador
Import upstream version 1.92
53311
	Change "int handle" to "grub_ieee1275_phandle_t handle".
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53312
	* include/grub/powerpc/ieee1275/ieee1275.h
1.1.2 by Otavio Salvador
Import upstream version 1.92
53313
	(grub_ieee1275_get_property): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53314
1.1.2 by Otavio Salvador
Import upstream version 1.92
53315
2004-09-12  Tomas Ebenlendr  <ebik@ucw.cz>
53316
53317
	Added normal mode command `chainloader' as module chain.mod, which
53318
	depends on normal.mod and _chain.mod.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53319
1.1.2 by Otavio Salvador
Import upstream version 1.92
53320
	* conf/i386-pc.rmk (pkgdata_MODULES): Add `chain.mod'.
53321
	(chain_mod_SOURCES, chain_mod_CFLAGS): Variables added.
53322
	* include/grub/i386/pc/loader.h (grub_rescue_cmd_chainloader):
53323
	Deleted prototype.
53324
	* loader/i386/pc/chainloader.c (grub_rescue_cmd_chainloader): All
53325
	but arguments parsing moved to ...
53326
	(grub_chainloader_cmd): ... here.  New function.
53327
	* include/grub/i386/pc/chainloader.h: New file.
53328
	* loader/i386/pc/chainloader_normal.c: Likewise.
53329
53330
2004-09-11  Marco Gerards  <metgerards@student.han.nl>
53331
53332
	* conf/i386-pc.rmk (kernel_img_SOURCES): Added kern/fshelp.c.
53333
	(grub_mkimage_LDFLAGS): Likewise.
53334
	(grub_emu_SOURCES): Likewise.
53335
	(kernel_img_HEADERS): Added fshelp.h.
53336
	* fs/ext2.c: Include <grub/fshelp.h>.
53337
	(FILETYPE_REG): New macro.
53338
	(FILETYPE_INO_REG): Likewise.
53339
	(grub_ext_sblock): Renamed to `grub_ext2_sblock'.
53340
	Changed all users.
53341
	(ext2_block_group): Renamed to `grub_ext2_block_group'.  Changed
53342
	all users.
53343
	(grub_fshelp_node): New struct.
53344
	(grub_ext2_data): Added member `diropen'.  Changed member `inode'
53345
	to a pointer.
53346
	(grub_ext2_get_file_block): Removed function.
53347
	(grub_ext2_read_block): New function.
53348
	(grub_ext2_read_file): Replaced parameter `data' by `node'.
53349
	This function was written.
53350
	(grub_ext2_mount): Read the root inode.  Create a diropen struct.
53351
	(grub_ext2_find_file): Removed function.
53352
	(grub_ext2_read_symlink): New function.
53353
	(grub_ext2_iterate_dir): Likewise.
53354
	(grub_ext2_open): Rewritten.
53355
	(grub_ext2_dir): Rewritten.
53356
	* include/grub/fshelp.h: New file.
53357
	* fs/fshelp.c: Likewise.
53358
53359
2004-09-10  Yoshinori K. Okuji  <okuji@enbug.org>
53360
53361
	* normal/menu.c: Include grub/loader.h and grub/machine/time.h.
53362
	(print_message): Add a missing newline.
53363
	(run_menu): Added timeout support.
53364
	(run_menu_entry): New local function.
53365
	(grub_menu_run): Added support for booting.
53366
53367
	* kern/loader.c (grub_loader_is_loaded): New function.
53368
53369
	* include/grub/powerpc/ieee1275/time.h: Include grub/symbol.h.
53370
	(grub_get_rtc): Exported.
53371
53372
	* include/grub/i386/pc/time.h: Include grub/symbol.h.
53373
	(grub_get_rtc): Exported.
53374
53375
	* include/grub/normal.h (struct grub_command_list): Remove
53376
	constant from the member `command'.
53377
53378
	* include/grub/loader.h (grub_loader_is_loaded): Declared.
53379
53380
	* include/grub/err.h (GRUB_ERR_INVALID_COMMAND): New constant.
53381
53382
	* conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/time.h.
53383
53384
2004-08-28  Marco Gerards  <metgerards@student.han.nl>
53385
53386
	Add support for the JFS filesystem.
53387
53388
	* fs/jfs.c: New file.
53389
	* include/grub/fs.h (grub_jfs_init): New prototype.
53390
	(grub_jfs_fini): New prototype.
53391
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/jfs.c.
53392
	(grub_emu_SOURCES): Likewise.
53393
	(pkgdata_MODULES): Add jfs.mod.
53394
	(jfs_mod_SOURCES): New variable.
53395
	(jfs_mod_CFLAGS): Likewise.
53396
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs.jfs.c.
53397
	(grubof_SOURCES): Likewise.
53398
	* util/grub-emu.c (main): Initialize and deinitialize JFS support.
53399
53400
	* fs/fat.c (grub_fat_find_dir): Convert the filename little
53401
	endian to the host endian.
53402
	(grub_fat_utf16_to_utf8): Move function from there...
53403
	* kern/misc.c (grub_utf16_to_utf8): ...to here.  Do not convert
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53404
	the endianness of the source string anymore.
1.1.2 by Otavio Salvador
Import upstream version 1.92
53405
	* include/grub/misc.h (grub_utf16_to_utf8): New prototype.
53406
53407
2004-08-24  Marco Gerards  <metgerards@student.han.nl>
53408
53409
	* commands/boot.c (grub_boot_init) [GRUB_UTIL]: Make conditional.
53410
	(grub_boot_fini) [GRUB_UTIL]: Likewise.
53411
	(GRUB_MOD_INIT) [!GRUB_UTIL]: Likewise.
53412
	(GRUB_MOD_FINI) [!GRUB_UTIL]: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53413
1.1.2 by Otavio Salvador
Import upstream version 1.92
53414
	* fs/hfs.c (grub_hfs_find_node): Add a prototype for `node_found'.
53415
	(grub_hfs_iterate_dir): Make the function static.  Add prototypes
53416
	for `node_found' and `it_dir'.
53417
	(grub_hfs_dir): Add prototype for `dir_hook'.
53418
53419
	* fs/minix.c (grub_minix_get_file_block): Add prototype for
53420
	`grub_get_indir'.  Rename `indir' in two blocks to `indir16'
53421
	and `indir32' to silence a gcc warning.
53422
53423
	* include/grub/fs.h (grub_hfs_init): New prototype.
53424
	(grub_hfs_fini): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53425
53426
1.1.2 by Otavio Salvador
Import upstream version 1.92
53427
2004-08-21  Yoshinori K. Okuji  <okuji@enbug.org>
53428
53429
	Each disk device has its own id now. This is useful to make use
53430
	of multiple disk devices.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53431
1.1.2 by Otavio Salvador
Import upstream version 1.92
53432
	* include/grub/disk.h (grub_disk_dev_id): New enum.
53433
	(GRUB_DISK_DEVICE_BIOSDISK_ID): New constant.
53434
	(GRUB_DISK_DEVICE_OFDISK_ID): Likewise.
53435
53436
	* disk/i386/pc/biosdisk.c (grub_biosdisk_dev): Specify
53437
	GRUB_DISK_DEVICE_BIOSDISK_ID as an id.
53438
53439
	* disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_dev): Specify
53440
	GRUB_DISK_DEVICE_OFDISK_ID as an id.
53441
53442
	* util/i386/pc/biosdisk.c (grub_util_biosdisk_dev): Specify
53443
	GRUB_DISK_DEVICE_BIOSDISK_ID as an id.
53444
53445
	* include/grub/disk.h (struct grub_disk_dev): Added a new member
53446
	"id" which is used by the cache manager.
53447
53448
	* normal/main.c (grub_normal_init_page): Use "GNU GRUB" instead
53449
	of just "GRUB".
53450
53451
2004-08-18  Marco Gerards  <metgerards@student.han.nl>
53452
53453
	* fs/hfs.c: New file.
53454
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/hfs.c.
53455
	(grub_emu_SOURCES): Likewise.
53456
	(pkgdata_MODULES): Add hfs.mod.
53457
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs/hfs.c.
53458
	(grubof_SOURCES): Likewise.
53459
	* util/grub-emu.c (main): Initialize and deinitialize HFS support.
53460
53461
	* include/grub/misc.h (grub_strncasecmp): Add prototype.
53462
	* kern/misc.c (grub_strncasecmp): Add function.
53463
53464
2004-08-14  Marco Gerards  <metgerards@student.han.nl>
53465
53466
	* include/grub/arg.h (GRUB_ARG_OPTION_OPTIONAL): Surround macro
53467
	with parentheses.
53468
53469
	* fs/ext2.c (FILETYPE_UNKNOWN): New macro.
53470
	(grub_ext2_dir): In case the directory entry type is unknown, read
53471
	it from the inode.
53472
53473
2004-08-02  Peter Bruin  <pjbruin@dds.nl>
53474
53475
	* loader/powerpc/ieee1275/linux.c (grub_linux_init): Pass
53476
	grub_load_linux instead of grub_rescue_cmd_linux as second
53477
	argument of grub_rescue_register_command.
53478
53479
	* Makefile.in (RMKFILES): Add conf/powerpc-ieee1275.rmk.
53480
53481
2004-07-27  Marco Gerards  <metgerards@student.han.nl>
53482
53483
	* boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_release): New
53484
	function.
53485
	* commands/boot.c: Remove the check for `GRUB_UTIL'.
53486
	* conf/powerpc-ieee1275.rmk (grubof_SOURCES): Add
53487
	`loader/powerpc/ieee1275/linux.c',
53488
	`loader/powerpc/ieee1275/linux_normal.c' and `commands/boot.c'.
53489
	* include/grub/powerpc/ieee1275/ieee1275.h
53490
	(grub_ieee1275_release): New prototype.
53491
	* include/grub/powerpc/ieee1275/loader.h: Rewritten.
53492
	* kern/powerpc/ieee1275/init.c (grub_machine_init): Initialize
53493
	normal, boot, linux and linux_normal.
53494
	* loader/powerpc/ieee1275/linux.c: New file.
53495
	* loader/powerpc/ieee1275/linux_normal.c: Likewise.
53496
53497
2004-07-12  Marco Gerards  <metgerards@student.han.nl>
53498
53499
	* normal/arg.c (grub_arg_parse): Correct error handling after
53500
	reallocating the argumentlist (check if `argl' is not null instead
53501
	of checking if `args' is not null).
53502
	* kern/mm.c (grub_realloc): Return the same pointer when using the
53503
	same region, instead of returning the header address.
53504
53505
2004-07-11  Marco Gerards  <metgerards@student.han.nl>
53506
53507
	* disk/powerpc/ieee1275/partition.c (grub_partition_iterate): Skip
53508
	one block instead of two when looking for the initial partition.
53509
	(grub_partition_probe): Initialize the local variable `p' with 0.
53510
	Use base 10 for the grub_strtoul call.
53511
	* kern/misc.c (grub_strncpy): Fix off by one bug.  Eliminated the
53512
	need for one local variable.
53513
	(grub_strtoul): Don't add the new value to `num', instead of that
53514
	just assign it.
53515
53516
2004-07-11  Marco Gerards  <metgerards@student.han.nl>
53517
53518
	* conf/i386-pc.rmk (pkgdata_IMAGE): Add pxeboot.img.
53519
	(pxeboot_img_SOURCES): New variable.
53520
	(pxeboot_img_ASFLAGS): Likewise.
53521
	(pxeboot_img_LDFLAGS): Likewise.
53522
	* boot/i386/pc/pxeboot.S: New file.  Based on pxeloader.S from
53523
	GRUB Legacy and boot.S.  Adopted for GRUB 2 by lode leroy
53524
	<lode_leroy@hotmail.com>.
53525
53526
2004-06-27  Tomas Ebenlendr  <ebik@ucw.cz>
53527
53528
	* kern/rescue.c (grub_enter_rescue_mode): Don't continue when
53529
	there was no input.
53530
53531
2004-06-27  Tomas Ebenlendr  <ebik@ucw.cz>
53532
53533
	* normal/cmdline.c (grub_set_history): Fix off by one bug.  Fixed
53534
	the history buffer logic.
53535
53536
2004-06-27  Tomas Ebenlendr  <ebik@ucw.cz>
53537
53538
	* fs/ext2.c (FILETYPE_INO_MASK, FILETYPE_INO_DIRECTORY)
53539
	(FILETYPE_INO_SYMLINK): New macros.
53540
	(grub_ext2_find_file): Check if the node is a directory using the
53541
	inode stat information instead of using the filetype in the
53542
	dirent.  Exclude the first character of an absolute symlink.
53543
	(grub_ext2_dir): Mask out the filetype part of the mode member of
53544
	the inode.
53545
53546
2004-05-24  Marco Gerards  <metgerards@student.han.nl>
53547
53548
	Add support for UFS version 1 and 2.  Add support for the minix
53549
	filesystem version 1 and 2, both the variants with 14 and 30 long
53550
	filenames.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53551
1.1.2 by Otavio Salvador
Import upstream version 1.92
53552
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/ufs.c and
53553
	fs/minix.c.
53554
	(grub_emu_SOURCES): Likewise.
53555
	(pkgdata_MODULES): Add ufs.mod and minix.mod.
53556
	(ufs_mod_SOURCES): New variable.
53557
	(ufs_mod_CFLAGS): Likewise.
53558
	(minix_mod_SOURCES): Likewise.
53559
	(minix_mod_CFLAGS): Likewise.
53560
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs/ufs.c and
53561
	fs/minix.c.
53562
	(grubof_SOURCES): Likewise.
53563
	* fs/ufs.c: New file.
53564
	* fs/minix.c: New file.
53565
	* include/grub/fs.h (grub_ufs_init): New prototype.
53566
	(grub_ufs_fini): Likewise.
53567
	(grub_minix_init): Likewise.
53568
	(grub_minix_fini): Likewise.
53569
	* util/grub-emu.c (main): Initialize and deinitialize UFS and
53570
	minix fs.
53571
53572
2004-04-30  Jeroen Dekkers  <jeroen@dekkers.cx>
53573
53574
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add normal/arg.c,
53575
	commands/ls.c, commands/terminal.c, commands/boot.c,
53576
	commands/cmp.c and commands/cat.c.
53577
	(grubof_LDFLAGS): Add -nostdlib -static-libgcc -lgcc.
53578
53579
	* kern/powerpc/ieee1275/init.c: Include "grub/env.h" instead of
53580
	"env.h"
53581
53582
2004-04-04  Yoshinori K. Okuji  <okuji@enbug.org>
53583
53584
	All symbols prefixed with PUPA_ and pupa_ are renamed to GRUB_
53585
	and grub_, respectively. Because the conversion is trivial and
53586
	mechanical, I omit the details here. Please refer to the CVS
53587
	if you need more information.
53588
53589
2004-04-04  Yoshinori K. Okuji  <okuji@enbug.org>
53590
53591
	* include/pupa: Renamed to ...
53592
	* include/grub: ... this.
53593
	* util/i386/pc/pupa-mkimage.c: Renamed to ...
53594
	* util/i386/pc/grub-mkimage.c: ... this.
53595
	* util/i386/pc/pupa-setup.c: Renamed to ...
53596
	* util/i386/pc/grub-setup.c: ... this.
53597
	* util/pupa-emu.c: Renamed to ...
53598
	* util/grub-emu.c: ... this.
53599
53600
2004-03-29  Marco Gerards  <metgerards@student.han.nl>
53601
53602
	Add support for the newworld apple macintosh (PPC).  This has been
53603
	tested on the powerbook 2000 only.  It only adds support for
53604
	generic ieee1275 functions, console and disk support.  This should
53605
	be easy to port to other architectures with support for Open
53606
	Firmware.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53607
1.1.2 by Otavio Salvador
Import upstream version 1.92
53608
	* configure.ac: Accept the powerpc as host_cpu.  In the case of
53609
	the powerpc cpu set the host_vendor to ieee1275.  Make sure the i386
53610
	specific tests are only executed while building for the i386.
53611
	Inverse test for crosscompile.
53612
	* genmk.rb (Utility): Allow assembler files.
53613
	* normal/cmdline.c (pupa_tab_complete): Reset pupa_errno.
53614
	* conf/powerpc-ieee1275.rmk: New file.
53615
	* disk/powerpc/ieee1275/ofdisk.c: Likewise.
53616
	* disk/powerpc/ieee1275/partition.c: Likewise.
53617
	* include/pupa/powerpc/ieee1275/biosdisk.h: Likewise.
53618
	* include/pupa/powerpc/ieee1275/console.h: Likewise.
53619
	* include/pupa/powerpc/ieee1275/partition.h: Likewise.
53620
	* include/pupa/powerpc/ieee1275/time.h: Likewise.
53621
	* include/pupa/powerpc/ieee1275/util/biosdisk.h: Likewise.
53622
	* include/pupa/powerpc/ieee1275/multiboot.h: Likewise.
53623
	* include/pupa/powerpc/ieee1275/loader.h
53624
	* include/pupa/powerpc/setjmp.h: Likewise.
53625
	* include/pupa/powerpc/types.h: Likewise.
53626
	* kern/powerpc/ieee1275/init.c: Likewise.
53627
	* kern/powerpc/ieee1275/openfw.c: Likewise.
53628
	* term/powerpc/ieee1275/ofconsole.c: Likewise.
53629
53630
	These files were written by Johan Rydberg
53631
	(jrydberg@night.trouble.net) and I only modified them slightly.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53632
1.1.2 by Otavio Salvador
Import upstream version 1.92
53633
	* boot/powerpc/ieee1275/cmain.c: New file.
53634
	* boot/powerpc/ieee1275/crt0.S: Likewise.
53635
	* boot/powerpc/ieee1275/ieee1275.c: Likewise.
53636
	* include/pupa/powerpc/ieee1275/ieee1275.h: Likewise.
53637
53638
2004-03-14  Jeroen Dekkers  <jeroen@dekkers.cx>
53639
53640
	* Makefile.in: Update copyright.
53641
	* genmodsrc.sh: Likewise.
53642
	* gensymlist.sh: Likewise.
53643
	* term/i386/pc/vga.c: Indent correctly.
53644
53645
	* util/i386/pc/pupa-mkimage.c (usage): Use PACKAGE_BUGREPORT as
53646
	bugreporting address.
53647
	* util/i386/pc/pupa-setup.c (usage): Likewise,
53648
	(main): Call pupa_ext2_init and pupa_ext2_fini.
53649
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53650
	* fs/fat.c (log2): Renamed to ...
1.1.2 by Otavio Salvador
Import upstream version 1.92
53651
	(fat_log2): ... this.
53652
	All callers changed.
53653
	* kern/misc.c (memcpy): Alias to pupa_memmove.
53654
	* loader/i386/pc/multiboot.c (pupa_rescue_cmd_multiboot): Fix
53655
	lvalue cast.
53656
	* util/console.c (pupa_ncurses_fini): Return 0.
53657
53658
	* util/i386/pc/biosdisk.c (pupa_util_biosdisk_open)[__linux__]:
53659
	Move fail label here.
53660
	[__GNU__]: Don't warn when using stat.
53661
	(open_device)[!__linux__]: Check if FD < 0 instead of !FD.
53662
	(pupa_util_biosdisk_get_pupa_dev)[__GNU__]: Change type of N to
53663
	long int. Use strtol instead of strtoul.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53664
1.1.2 by Otavio Salvador
Import upstream version 1.92
53665
2004-03-14  Marco Gerards  <metgerards@student.han.nl>
53666
53667
	* commands/boot.c: New file.
53668
	* commands/cat.c: Likewise.
53669
	* commands/cmp.c: Likewise.
53670
	* commands/ls.c: Likewise.
53671
	* commands/terminal.c: Likewise.
53672
	* normal/command.c: Include <pupa/env.h> and <pupa/dl.h>.
53673
	(pupa_register_command): Changed interface to match the new
53674
	argument parser.
53675
	(pupa_command_execute): Changed (almost rewritten) so it uses
53676
	pupa_split_command.  Added support for setting variables using the
53677
	syntax `foo=bar'.
53678
	(rescue_command): Changed to work with the new argument parser.
53679
	(terminal_command): Moved from here to commands/terminal.c.
53680
	(set_command): New function.
53681
	(unset_command): New function.
53682
	(insmod_command): New function.
53683
	(rmmod_command): New function.
53684
	(lsmod_command): New function.
53685
	(pupa_command_init): Don't initialize the command terminal
53686
	anymore.  Initialize the commands set, unset, insmod, rmmod and
53687
	lsmod.
53688
	* conf/i386-pc.rmk (kernel_img_SOURCES): Add kern/env.c.
53689
	(kernel_img_HEADERS): Add arg.h and env.h.
53690
	(pupa_mkimage_LDFLAGS): Add kern/env.c.
53691
	(pupa_emu_SOURCES): Add kern/env.c, commands/ls.c,
53692
	commands/terminal.c commands/boot.c commands/cmp.c commands/cat.c,
53693
	normal/arg.c.
53694
	(pkgdata_MODULES): Add ls.mod, boot.mod, cmp.mod, cat.mod and
53695
	terminal.mod.
53696
	(normal_mod_SOURCES): Add normal/arg.c and normal/arg.c.
53697
	(boot_mod_SOURCES): New variable.
53698
	(terminal_mod_SOURCES): Likewise.
53699
	(ls_mod_SOURCES): Likewise.
53700
	(cmp_mod_SOURCES): Likewise.
53701
	(cat_mod_SOURCES): Likewise.
53702
53703
	* normal/arg.c: New file.
53704
	* kern/env.c: Likewise.
53705
	* include/pupa/arg.h: Likewise.
53706
	* include/pupa/env.h: Likewise.
53707
	* font/manager.c (font_command): Changed to match argument parsing
53708
	interface changes.
53709
	(PUPA_MOD_INIT): Likewise.
53710
	* hello/hello.c (pupa_cmd_hello): Likewise.
53711
	(PUPA_MOD_INIT): Likewise.
53712
	* include/pupa/disk.h: Include <pupa/device.h>.
53713
	(pupa_print_partinfo): New prototype.
53714
	* include/pupa/dl.h (pupa_dl_set_prefix): Prototype removed.
53715
	(pupa_dl_get_prefix): Likewise.
53716
	* include/pupa/misc.h: Include <pupa/err.h>.
53717
	(pupa_isgraph): New prototype.
53718
	(pupa_isdigit): Likewise.
53719
	(pupa_split_cmdline): Likewise.
53720
	* include/pupa/normal.h: Include <pupa/arg.h>.
53721
	(pupa_command): Changed the prototype of the member `func' to
53722
	match the argument parsing interface.  Added member `options'.
53723
	(pupa_register_command): Updated to match function.
53724
	(pupa_arg_parse): New prototype.
53725
	(pupa_hello_init) [PUPA_UTIL]: New prototype.
53726
	(pupa_hello_fini) [PUPA_UTIL]: Likewise.
53727
	(pupa_ls_init) [PUPA_UTIL]: Likewise.
53728
	(pupa_ls_fini) [PUPA_UTIL]: Likewise.
53729
	(pupa_cat_init) [PUPA_UTIL]: Likewise.
53730
	(pupa_cat_fini) [PUPA_UTIL]: Likewise.
53731
	(pupa_boot_init) [PUPA_UTIL]: Likewise.
53732
	(pupa_boot_fini) [PUPA_UTIL]: Likewise.
53733
	(pupa_cmp_init) [PUPA_UTIL]: Likewise.
53734
	(pupa_cmp_fini) [PUPA_UTIL]: Likewise.
53735
	(pupa_terminal_init) [PUPA_UTIL]: Likewise.
53736
	(pupa_terminal_fini) [PUPA_UTIL]: Likewise.
53737
	* kern/disk.c: Include <pupa/file.h>.
53738
	(pupa_print_partinfo): New function.
53739
	* kern/dl.c: Include <pupa/env.h>.
53740
	(pupa_dl_dir): Variable removed.
53741
	(pupa_dl_load): Use the environment variable `prefix' instead of
53742
	the variable pupa_dl_dir.
53743
	(pupa_dl_set_prefix): Function removed.
53744
	(pupa_dl_get_prefix): Likewise.
53745
	* kern/i386/pc/init.c: Include <pupa/env.h>.
53746
	(pupa_machine_init): Use the environment variable `prefix' instead of
53747
	using pupa_dl_set_prefix to set the prefix.
53748
	* kern/main.c: Include <pupa/env.h>.
53749
	(pupa_set_root_dev): Use the environment variable `prefix' instead of
53750
	using pupa_dl_get_prefix to get the prefix.
53751
	* kern/misc.c: Include <pupa/env.h>.
53752
	(pupa_isdigit): New function.
53753
	(pupa_isgraph): Likewise.
53754
	(pupa_ftoa): Likewise.
53755
	(pupa_vsprintf): Added support for printing values of the type
53756
	`double'.  Make it possible to format variable output when using
53757
	formatting like `%1.2%f'.
53758
	(pupa_split_cmdline): New function.
53759
	* kern/rescue.c: Include <pupa/env.h>.
53760
	(next_word): Removed function.
53761
	(pupa_rescue_cmd_prefix): Likewise.
53762
	(pupa_rescue_cmd_set): New function.
53763
	(pupa_rescue_cmd_unset): New function.
53764
	(pupa_enter_rescue_mode): Use the `pupa_split_cmdline' function to
53765
	split the command line instead of splitting it here.  Added
53766
	support for setting variables using the syntax `foo=bar'.  Don't
53767
	initialize the prefix command anymore.  Initialized the set and
53768
	unset commands.
53769
	* normal/cmdline.c: Include <pupa/env.h>.
53770
	(pupa_tab_complete): Added prototypes for print_simple_completion,
53771
	print_partition_completion, add_completion, iterate_commands,
53772
	iterate_dev, iterate_part and iterate_dir. Moved code to print
53773
	partition information from here to kern/disk.c.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53774
	(pupa_cmdline_run): Don't check if the function exists anymore.
1.1.2 by Otavio Salvador
Import upstream version 1.92
53775
	* normal/main.c: Include <pupa/env.h>.
53776
	(pupa_rescue_cmd_normal): Use the environment variable `prefix'
53777
	instead of using pupa_dl_get_prefix to get the prefix.
53778
	* term/i386/pc/vga.c: Include <pupa/arg.h>.
53779
	(check_vga_mem): Cast pointers to `void *' to silence a gcc
53780
	warning.
53781
	(pupa_vga_putchar) [! DEBUG_VGA]: Removed for this case.
53782
	(pupa_vga_setcolor): Declare unused variables with `__attribute__
53783
	((unused))' to silence a gcc warning.
53784
	(pupa_vga_setcolor): Likewise.
53785
	(debug_command): Changed to match argument parsing
53786
	interface changes.
53787
	* util/pupa-emu.c: Include <pupa/env.h>.
53788
	(options): Added 0's for unused fields to silence a gcc warning.
53789
	(argp): Likewise.
53790
	(main): Use the environment variable `prefix' instead of using
53791
	pupa_dl_set_prefix to set the prefix.  Initialize the commands ls,
53792
	boot, cmp, cat and terminal.  Finish the commands boot, cmp, cat
53793
	and terminal.
53794
53795
	* util/i386/pc/getroot.c: Include <pupa/i386/pc/util/biosdisk.h>.
53796
	* util/misc.c: Include <malloc.h>.
53797
	(pupa_malloc): Rewritten so errors are correctly reported.
53798
	(pupa_realloc): Likewise.
53799
	(pupa_memalign): Likewise.
53800
	(pupa_mm_init_region): Declare unused variables with
53801
	`__attribute__ ((unused))' to silence a gcc warning.
53802
	* normal/i386/setjmp.S: Remove tab at the end of the file to
53803
	silence a gcc warning.
53804
	* loader/i386/pc/linux.c (pupa_rescue_cmd_initrd): Declare unused
53805
	variables with `__attribute__ ((unused))' to silence a gcc
53806
	warning.
53807
	* loader/i386/pc/multiboot.c (pupa_multiboot_unload): Make the
53808
	local variable i unsigned to silence a gcc warning.
53809
53810
	* kern/term.c: Include <pupa/misc.h>.
53811
	(pupa_more_lines): New variable.
53812
	(pupa_more): Likewise.
53813
	(pupa_putcode): When the pager is active pause at the end of every
53814
	screen.
53815
	(pupa_set_more): New function.
53816
	* include/pupa/term.h (pupa_set_more): New prototype.
53817
53818
53819
2004-03-07  Yoshinori K. Okuji  <okuji@enbug.org>
53820
53821
	Now this project is GRUB 2 rather than PUPA. The location of
53822
	the CVS repository was moved to GRUB's.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
53823
1.1.2 by Otavio Salvador
Import upstream version 1.92
53824
	* configure.ac: Use bug-grub as the reporting address.
53825
	Use GRUB instead of PUPA.
53826
	Change the version number to 1.90.
53827
53828
2004-02-24  Yoshinori K. Okuji  <okuji@enbug.org>
53829
53830
	* genkernsyms.sh: Updated copyright information.
53831
	* genmk.rb: Likewise.
53832
	* genmodsrc.sh: Likewise.
53833
	* gensymlist.sh: Likewise.
53834
	* boot/i386/pc/boot.S: Likewise.
53835
	* boot/i386/pc/diskboot.S: Likewise.
53836
	* disk/i386/pc/biosdisk.c: Likewise.
53837
	* disk/i386/pc/partition.c: Likewise.
53838
	* font/manager.c: Likewise.
53839
	* fs/ext2.c: Likewise.
53840
	* fs/fat.c: Likewise.
53841
	* include/pupa/boot.h: Likewise.
53842
	* include/pupa/device.h: Likewise.
53843
	* include/pupa/disk.h: Likewise.
53844
	* include/pupa/dl.h: Likewise.
53845
	* include/pupa/elf.h: Likewise.
53846
	* include/pupa/err.h: Likewise.
53847
	* include/pupa/file.h: Likewise.
53848
	* include/pupa/font.h: Likewise.
53849
	* include/pupa/fs.h: Likewise.
53850
	* include/pupa/kernel.h: Likewise.
53851
	* include/pupa/loader.h: Likewise.
53852
	* include/pupa/misc.h: Likewise.
53853
	* include/pupa/mm.h: Likewise.
53854
	* include/pupa/net.h: Likewise.
53855
	* include/pupa/normal.h: Likewise.
53856
	* include/pupa/rescue.h: Likewise.
53857
	* include/pupa/setjmp.h: Likewise.
53858
	* include/pupa/symbol.h: Likewise.
53859
	* include/pupa/term.h: Likewise.
53860
	* include/pupa/types.h: Likewise.
53861
	* include/pupa/i386/setjmp.h: Likewise.
53862
	* include/pupa/i386/types.h: Likewise.
53863
	* include/pupa/i386/pc/biosdisk.h: Likewise.
53864
	* include/pupa/i386/pc/boot.h: Likewise.
53865
	* include/pupa/i386/pc/console.h: Likewise.
53866
	* include/pupa/i386/pc/init.h: Likewise.
53867
	* include/pupa/i386/pc/kernel.h: Likewise.
53868
	* include/pupa/i386/pc/linux.h: Likewise.
53869
	* include/pupa/i386/pc/loader.h: Likewise.
53870
	* include/pupa/i386/pc/memory.h: Likewise.
53871
	* include/pupa/i386/pc/multiboot.h: Likewise.
53872
	* include/pupa/i386/pc/partition.h: Likewise.
53873
	* include/pupa/i386/pc/time.h: Likewise.
53874
	* include/pupa/i386/pc/vga.h: Likewise.
53875
	* include/pupa/i386/pc/util/biosdisk.h: Likewise.
53876
	* include/pupa/util/getroot.h: Likewise.
53877
	* include/pupa/util/misc.h: Likewise.
53878
	* include/pupa/util/resolve.h: Likewise.
53879
	* kern/device.c: Likewise.
53880
	* kern/disk.c: Likewise.
53881
	* kern/dl.c: Likewise.
53882
	* kern/err.c: Likewise.
53883
	* kern/file.c: Likewise.
53884
	* kern/fs.c: Likewise.
53885
	* kern/loader.c: Likewise.
53886
	* kern/main.c: Likewise.
53887
	* kern/misc.c: Likewise.
53888
	* kern/mm.c: Likewise.
53889
	* kern/rescue.c: Likewise.
53890
	* kern/term.c: Likewise.
53891
	* kern/i386/dl.c: Likewise.
53892
	* kern/i386/pc/init.c: Likewise.
53893
	* kern/i386/pc/lzo1x.S: Likewise.
53894
	* kern/i386/pc/startup.S: Likewise.
53895
	* loader/i386/pc/chainloader.c: Likewise.
53896
	* loader/i386/pc/linux.c: Likewise.
53897
	* loader/i386/pc/multiboot.c: Likewise.
53898
	* normal/cmdline.c: Likewise.
53899
	* normal/command.c: Likewise.
53900
	* normal/main.c: Likewise.
53901
	* normal/menu.c: Likewise.
53902
	* normal/i386/setjmp.S: Likewise.
53903
	* term/i386/pc/console.c: Likewise.
53904
	* term/i386/pc/vga.c: Likewise.
53905
	* util/console.c: Likewise.
53906
	* util/genmoddep.c: Likewise.
53907
	* util/misc.c: Likewise.
53908
	* util/pupa-emu.c: Likewise.
53909
	* util/resolve.c: Likewise.
53910
	* util/unifont2pff.rb: Likewise.
53911
	* util/i386/pc/biosdisk.c: Likewise.
53912
	* util/i386/pc/getroot.c: Likewise.
53913
	* util/i386/pc/pupa-mkimage.c: Likewise.
53914
	* util/i386/pc/pupa-setup.c: Likewise.
53915
53916
2004-02-15  Jeroen Dekkers  <jeroen@dekkers.cx>
53917
53918
	* fs/ext2.c (pupa_ext2_read_file): Correct the value of BLOCKEND
53919
	when it is EXT2_BLOCK_SIZE (data).  New argument READ_HOOK, all
53920
	callers changed.  Set DATA->DISK->READ_HOOK to READ_HOOK before
53921
	reading and reset it after reading.
53922
	(pupa_ext2_close): Return PUPA_ERR_NONE.
53923
53924
	* include/pupa/i386/pc/linux.h (PUPA_LINUX_INITRD_MAX_ADDRESS):
53925
	Correct value.
53926
	(struct linux_kernel_header): Add kernel_version and
53927
	initrd_addr_max.
53928
	* loader/i386/pc/linux.c (pupa_rescue_cmd_linux): Check whether
53929
	pupa_file_read succeeds.
53930
	(pupa_rescue_cmd_initrd): Implement.
53931
53932
2003-12-03  Marco Gerards  <metgerards@student.han.nl>
53933
53934
	* fs/ext2.c (pupa_ext2_label): New function.
53935
	(pupa_ext2_fs): Added label.
53936
	* fs/fat.c (pupa_fat_label): New function.
53937
	(pupa_fat_fs): Added label.
53938
	* include/pupa/fs.h (struct pupa_fs): Added prototype label.
53939
53940
	* kern/misc.c (pupa_strndup): New function.
53941
	* include/pupa/misc.h (pupa_strndup): New prototype.
53942
53943
	* include/pupa/normal.h: Include <pupa/err.h>.
53944
	(pupa_set_history): New prototype.
53945
	(pupa_iterate_commands): New prototype.
53946
	* normal/cmdline.c: Include <pupa/machine/partition.h>,
53947
	<pupa/disk.h>, <pupa/file.h>.
53948
	(hist_size): New variable.
53949
	(hist_lines): Likewise.
53950
	(hist_end): Likewise.
53951
	(hist_used): Likewise.
53952
	(pupa_set_history): New function.
53953
	(pupa_history_get): Likewise.
53954
	(pupa_history_add): Likewise.
53955
	(pupa_history_replace): Likewise.
53956
	(pupa_tab_complete): Likewise.
53957
	(pupa_cmdline_run): Added tab completion and history buffer.  Tab
53958
	completion shows partitionnames while completing partitions, this
53959
	feature was suggested by Jeff Bailey.
53960
	* normal/command.c (pupa_iterate_commands): New function.
53961
	* normal/main.c (PUPA_DEFAULT_HISTORY_SIZE): New macro.
53962
	(pupa_normal_init): Initialize history buffer.
53963
	(PUPA_MOD_INIT): Likewise.
53964
	(pupa_normal_fini): Free the history buffer.
53965
	(PUPA_MOD_FINI): Likewise.
53966
53967
	* util/console.c (pupa_ncurses_getkey): Accept 127 as backspace
53968
	key.
53969
53970
	* aclocal.m4 (pupa_I386_CHECK_REGPARM_BUG): New DEFUN.
53971
	* configure.ac [i386]: Check for regparam bug.
53972
	(NESTED_FUNC_ATTR) [! i386]: Defined.
53973
53974
2003-11-17  Marco Gerards  <metgerards@student.han.nl>
53975
53976
	* conf/i386-pc.rmk (sbin_UTILITIES): Added pupa-emu.
53977
	(pupa_setup_SOURCES): Added util/i386/pc/getroot.c.
53978
	(pupa_emu_SOURCES): New variable.
53979
	(pupa_emu_LDFLAGS): Likewise.
53980
	* include/pupa/fs.h (pupa_ext2_init) [PUPA_UTIL]: New prototype.
53981
	(pupa_ext2_fini) [PUPA_UTIL]: Likewise.
53982
	* include/pupa/normal.h (pupa_normal_init) [PUPA_UTIL]: Likewise.
53983
	(pupa_normal_fini) [PUPA_UTIL]: Likewise.
53984
	* include/pupa/setjmp.h [PUPA_UTIL]: Include <setjmp.h>.
53985
	(pupa_jmp_buf): New typedef.
53986
	(pupa_setjmp) [PUPA_UTIL]: New macro.
53987
	(pupa_longjmp) [PUPA_UTIL]: Likewise.
53988
	* include/pupa/term.h (struct pupa_term): New member `refresh'.
53989
	(pupa_refresh): New prototype.
53990
	* include/pupa/util/getroot.h: New file.
53991
	* kern/misc.c (pupa_vsprintf): Refresh the screen after updating
53992
	it.
53993
	* kern/rescue.c (pupa_rescue_get_command_line): Likewise.
53994
	(pupa_rescue_cmd_cat): Likewise.
53995
	(pupa_rescue_cmd_ls): Likewise.
53996
	(pupa_rescue_cmd_testload): Likewise.
53997
	(pupa_rescue_cmd_lsmod): Likewise.
53998
	* normal/cmdline.c (pupa_cmdline_get): Likewise.
53999
	* normal/menu.c (run_menu): Likewise.
54000
	* kern/term.c (pupa_cls): Likewise.
54001
	(pupa_refresh): New function.
54002
	* normal/normal.c (pupa_normal_init) [PUPA_UTIL]: New function.
54003
	(pupa_normal_fini) [PUPA_UTIL]: Likewise.
54004
	* util/console.c: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54005
1.1.2 by Otavio Salvador
Import upstream version 1.92
54006
	* util/i386/pc/getroot.c: New file.
54007
	* util/i386/pc/pupa-setup.c: Include <pupa/util/getroot.h>.
54008
	(pupa_putchar): New function.
54009
	(pupa_refresh): Likewise.
54010
	(xgetcwd): Function moved to ...
54011
	(strip_extra_slashes): Likewise.
54012
	(get_prefix): Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54013
	* util/i386/pc/getroot.c: ... here.
1.1.2 by Otavio Salvador
Import upstream version 1.92
54014
	(find_root_device): Function moved and renamed to...
54015
	* util/i386/pc/getroot.c (pupa_find_root_device): ... here.
54016
	Changed all callers.
54017
	* util/i386/pc/pupa-setup.c (guess_root_device): Function moved
54018
	and renamed to...
54019
	* util/i386/pc/getroot.c (pupa_guess_root_device): ... here.
54020
	Changed all callers.
54021
	* util/misc.c (pupa_memalign): New function.
54022
	(pupa_mm_init_region): Likewise.
54023
	(pupa_register_exported_symbols): Likewise.
54024
	(pupa_putchar): Function removed.
54025
	* util/pupa-emu.c: New file.
54026
54027
2003-11-16  Jeroen Dekkers  <jeroen@dekkers.cx>
54028
54029
	* conf/i386-pc.rmk (pkgdata_MODULES): Add _multiboot.mod.
54030
	(_multiboot_mod_SOURCES): New variable.
54031
	(_multiboot_mod_CFLAGS): Likewise.
54032
	* loader/i386/pc/multiboot.c: New file.
54033
	* include/pupa/i386/pc/multiboot.h: Likewise.
54034
	* kern/i386/pc/startup.S: Include pupa/machine/multiboot.h.
54035
	(pupa_multiboot_real_boot): New function.
54036
	* include/pupa/i386/pc/loader.h: Include pupa/machine/multiboot.h.
54037
	(pupa_multiboot_real_boot): New prototype.
54038
	(pupa_rescue_cmd_multiboot): Likewise
54039
	(pupa_rescue_cmd_module): Likewise.
54040
54041
	* kern/loader.c (pupa_loader_set): Continue when
54042
	pupa_loader_unload_func() fails.
54043
	(pupa_loader_unset): New function.
54044
	* include/pupa/loader.h (pupa_loader_unset): New prototype.
54045
54046
	* kern/misc.c (pupa_stpcpy): New function.
54047
	* include/pupa/misc.h (pupa_stpcpy): New prototype.
54048
54049
2003-11-12  Marco Gerards  <metgerards@student.han.nl>
54050
54051
	* disk/i386/pc/biosdisk.c (pupa_biosdisk_open): Correctly check
54052
	for available extensions.
54053
54054
	* include/pupa/i386/pc/time.h: New file.
54055
	* kern/disk.c: Include <pupa/machine/time.h>.
54056
	(PUPA_CACHE_TIMEOUT): New macro.
54057
	(pupa_last_time): New variable.
54058
	(pupa_disk_open): Flush the cache when there was a timeout.
54059
	(pupa_disk_close): Reset the timer.
54060
	* kern/i386/pc/startup.S (pupa_get_rtc): Renamed from
54061
	pupa_currticks.
54062
	* util/misc.c: Include <sys/times.h>
54063
	(pupa_get_rtc): New function.
54064
54065
2003-11-09  Jeroen Dekkers  <jeroen@dekkers.cx>
54066
54067
	* fs/ext2.c (struct pupa_ext2_inode): Declare struct datablocks
54068
	as blocks.
54069
	(pupa_ext2_get_file_block): Use blocks member.
54070
54071
	* fs/ext2.c (pupa_ext2_read_file): Only set skipfirst for the
54072
	first block. Return -1 instead of pupa_errno on error.
54073
54074
2003-10-27  Marco Gerards  <metgerards@student.han.nl>
54075
54076
	* README: In the pupa-mkimage example use _chain instead of chain
54077
	and ext2 instead of fat.
54078
	* TODO: Replace ext2fs with jfs as an example.  Add an item for
54079
	adding journal playback for ext2fs.
54080
	* conf/i386-pc.rmk (pupa_setup_SOURCES): Added fs/ext2.c.
54081
	(pkgdata_MODULES): Added ext2.mod.
54082
	(ext2_mod_SOURCES): New variable.
54083
	(ext2_mod_CFLAGS): Likewise.
54084
	* include/pupa/err.h (pupa_err_t): Added PUPA_ERR_SYMLINK_LOOP.
54085
	* include/pupa/misc.h (pupa_strncpy): New prototype.
54086
	(pupa_strcat): Likewise.
54087
	(pupa_strncmp): Likewise.
54088
	* kern/misc.c (pupa_strcat): Enable function.
54089
	(pupa_strncpy): New function.
54090
	(pupa_strncmp): Likewise.
54091
	* fs/ext2.c: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54092
1.1.2 by Otavio Salvador
Import upstream version 1.92
54093
	* kern/disk.c (pupa_disk_read): Set pupa_errno to PUPA_ERR_NONE
54094
	when the read failed before retrying.
54095
	* util/i386/pc/biosdisk.c (_LARGEFILE_SOURCE): Removed.
54096
	(_FILE_OFFSET_BITS): Likewise.
54097
	* configure.ac: Added AC_SYS_LARGEFILE.
54098
54099
2003-09-25  Yoshinori K. Okuji  <okuji@enbug.org>
54100
54101
	* genmk.rb (PModule#rule): Make sure to get only symbol names
54102
	from the output of nm.
1.13.8 by Felix Zielcke
Import upstream version 1.98~20100126
54103
	Reported by Robert Millan <rmh.grub@aybabtu.com>.
1.1.2 by Otavio Salvador
Import upstream version 1.92
54104
54105
2003-09-25  Yoshinori K. Okuji  <okuji@enbug.org>
54106
54107
	I forgot to check in these changes for a long time. This adds
54108
	incomplete support for VGA console, and this is still very
54109
	buggy. Also, a lot of consideration is required for I18N,
54110
	UNICODE, and VGA font issues. Therefore, assume that this is
54111
	such that "better than nothing".
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54112
1.1.2 by Otavio Salvador
Import upstream version 1.92
54113
	* font/manager.c: New file.
54114
	* include/pupa/font.h: Likewise.
54115
	* include/pupa/i386/pc/vga.h: Likewise.
54116
	* term/i386/pc/vga.c: Likewise.
54117
	* util/unifont2pff.rb: Likewise.
54118
54119
	* conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/vga.h.
54120
	(pkgdata_MODULES): Added vga.mod and font.mod.
54121
	(vga_mod_SOURCES): New variables.
54122
	(vga_mod_CFLAGS): Likewise.
54123
	(font_mod_SOURCES): Likewise.
54124
	(font_mod_CFLAGS): Likewise.
54125
54126
	* include/pupa/err.h (PUPA_ERR_BAD_FONT): New constant.
54127
54128
	* include/pupa/term.h: Include pupa/err.h.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54129
	(struct pupa_term): Added init and fini.
1.1.2 by Otavio Salvador
Import upstream version 1.92
54130
	Changed the argument of putchar to pupa_uint32_t.
54131
54132
	* include/pupa/i386/pc/console.h: Include pupa/symbol.h.
54133
	(pupa_console_real_putchar): New prototype.
54134
	(pupa_console_putchar): Removed.
54135
	(pupa_console_checkkey): Exported.
54136
	(pupa_console_getkey): Likewise.
54137
54138
	* kern/misc.c (pupa_vsprintf): Add support for UNICODE
54139
	characters.
54140
54141
	* kern/term.c (pupa_term_set_current): Rewritten.
54142
	(pupa_putchar): Likewise.
54143
	(pupa_putcode): New function.
54144
54145
	* kern/i386/pc/startup.S (pupa_console_putchar): Renamed to ...
54146
	(pupa_console_real_putchar): ... this.
54147
	(pupa_vga_set_mode): New function.
54148
	(pupa_vga_get_font): Likewise.
54149
54150
	* normal/command.c: Include pupa/term.h.
54151
	(terminal_command): New function.
54152
	(pupa_command_init): Register the command "terminal".
54153
54154
	* normal/menu.c (DISP_LEFT): Changed to a UNICODE value.
54155
	(DISP_UP): Likewise.
54156
	(DISP_RIGHT): Likewise.
54157
	(DISP_DOWN): Likewise.
54158
	(DISP_HLINE): Likewise.
54159
	(DISP_VLINE): Likewise.
54160
	(DISP_UL): Likewise.
54161
	(DISP_UR): Likewise.
54162
	(DISP_LL): Likewise.
54163
	(DISP_LR): Likewise.
54164
54165
	* term/i386/pc/console.c (pupa_console_putchar): New function.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54166
1.1.2 by Otavio Salvador
Import upstream version 1.92
54167
2003-02-08  NIIBE Yutaka  <gniibe@m17n.org>
54168
54169
	* util/resolve.c (pupa_util_resolve_dependencies): BUG
54170
	FIX. Reverse the path_list.
54171
54172
	* include/pupa/normal.h: Export pupa_register_command and
54173
	pupa_unregister_command.
54174
54175
	* hello/hello.c (pupa_cmd_hello): New module.
54176
	* conf/i386-pc.rmk: Added hello.mod.
54177
54178
2003-01-31  Yoshinori K. Okuji  <okuji@enbug.org>
54179
54180
	* kern/i386/pc/lzo1x.S: New file.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54181
1.1.2 by Otavio Salvador
Import upstream version 1.92
54182
	* util/i386/pc/pupa-mkimage.c: Include lzo1x.h.
54183
	(compress_kernel): New variable.
54184
	(generate_image): Heavily modified to support compressing a
54185
	large part of the core image.
54186
54187
	* util/misc.c (pupa_util_read_image): Fix a file descriptor
54188
	leak.
54189
	(pupa_util_load_image): New function.
54190
54191
	* kern/i386/pc/startup.S: Include pupa/machine/kernel.h.
54192
	(pupa_compressed_size): New variable.
54193
	(codestart): Enable Gate A20 here.
54194
	Decompress the compressed part of the core image.
54195
	Rearrange the code to put functions and variables which are
54196
	required for initialization in the non-compressed part.
54197
	Include lzo1x.S.
54198
54199
	* kern/i386/pc/init.c (pupa_machine_init): Don't enable Gate A20
54200
	here.
54201
54202
	* include/pupa/util/misc.h (pupa_util_write_image): Declared.
54203
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54204
	* include/pupa/i386/pc/kernel.h
1.1.2 by Otavio Salvador
Import upstream version 1.92
54205
	(PUPA_KERNEL_MACHINE_COMPRESSED_SIZE): New macro.
54206
	(PUPA_KERNEL_MACHINE_INSTALL_DOS_PART): Increased by 4.
54207
	(PUPA_KERNEL_MACHINE_INSTALL_BSD_PART): Likewise.
54208
	(PUPA_KERNEL_MACHINE_PREFIX): Likewise.
54209
	(PUPA_KERNEL_MACHINE_RAW_SIZE): New macro.
54210
54211
	* conf/i386-pc.rmk (pupa_mkimage_LDFLAGS): New variable.
54212
54213
	* genmk.rb (Image#rule): Put LDFLAGS at the end of a line.
54214
	(Utility#rule): Likewise.
54215
54216
	* configure.ac: Check if LZO is available.
54217
54218
2003-01-20  Yoshinori K. Okuji  <okuji@enbug.org>
54219
54220
	* include/pupa/normal.h: New file.
54221
	* include/pupa/setjmp.h: Likewise.
54222
	* include/pupa/i386/setjmp.h: Likewise.
54223
	* normal/cmdline.c: Likewise.
54224
	* normal/command.c: Likewise.
54225
	* normal/main.c: Likewise.
54226
	* normal/menu.c: Likewise.
54227
	* normal/i386/setjmp.S: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54228
1.1.2 by Otavio Salvador
Import upstream version 1.92
54229
	* loader/i386/pc/linux.c (pupa_rescue_cmd_linux): Made global.
54230
	(pupa_rescue_cmd_initrd): Likewise.
54231
54232
	* loader/i386/pc/chainloader.c (pupa_rescue_cmd_chainloader):
54233
	Likewise.
54234
54235
	* kern/i386/pc/startup.S (translation_table): New variable.
54236
	(translate_keycode): New function.
54237
	(pupa_console_getkey): Call translate_keycode.
54238
54239
	* kern/rescue.c (attempt_normal_mode): New function.
54240
	(pupa_enter_rescue_mode): Attempt to execute the normal mode. If
54241
	it failed, print a message.
54242
54243
	* kern/mm.c (pupa_real_malloc): Print more information when a
54244
	free magic is broken.
54245
	(pupa_free): If the first free header is not free actually, set
54246
	it to P.
54247
54248
	* kern/main.c (pupa_load_normal_mode): Just load the module
54249
	"normal".
54250
	(pupa_main): Don't print the message
54251
	"Entering into rescue mode..." here.
54252
54253
	* include/pupa/i386/pc/loader.h (pupa_rescue_cmd_initrd):
54254
	Declared.
54255
	(pupa_rescue_cmd_initrd): Likewise.
54256
	(pupa_rescue_cmd_initrd): Likewise.
54257
54258
	* include/pupa/symbol.h (FUNCTION): Specify the type.
54259
	(VARIABLE): Likewise.
54260
54261
	* include/pupa/err.h (pupa_err_t): Added
54262
	PUPA_ERR_UNKNOWN_COMMAND.
54263
54264
	* include/pupa/dl.h (pupa_dl_set_prefix): Exported.
54265
	(pupa_dl_get_prefix): Likewise.
54266
54267
	* conf/i386-pc.rmk (pkgdata_MODULES): Added normal.mod.
54268
	Added _chain.mod and _linux.mod instead of chain.mod and
54269
	linux.mod.
54270
	(chain_mod_SOURCES): Renamed to ...
54271
	(_chain_mod_SOURCES): ... this.
54272
	(chain_mod_CFLAGS): Renamed to ...
54273
	(_chain_mod_CFLAGS): ... this.
54274
	(linux_mod_SOURCES): Renamed to ...
54275
	(_linux_mod_SOURCES): ... this.
54276
	(linux_mod_CFLAGS): Renamed to ...
54277
	(_linux_mod_CFLAGS): ... this.
54278
	(normal_mod_SOURCES): New variable.
54279
	(normal_mod_CFLAGS): Likewise.
54280
	(normal_mod_ASFLAGS): Likewise.
54281
54282
2003-01-18  Yoshinori K. Okuji  <okuji@enbug.org>
54283
54284
	* kern/rescue.c (pupa_rescue_cmd_rmmod): Call pupa_dl_unload, if
54285
	possible.
54286
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54287
	* kern/dl.c (pupa_dl_ref): Refer depending modules
1.1.2 by Otavio Salvador
Import upstream version 1.92
54288
	recursively.
54289
	(pupa_dl_unref): Unrefer depending modules recursively.
54290
	Don't call pupa_dl_unload implicitly, because PUPA can crash if
54291
	a module is unloaded before one depending on that module is
54292
	unloaded.
54293
	(pupa_dl_unload): Unload depending modules explicitly,
54294
	if possible.
54295
54296
2003-01-17  Yoshinori K. Okuji  <okuji@enbug.org>
54297
54298
	* include/pupa/i386/pc/linux.h: New file.
54299
	* loader/i386/pc/linux.c: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54300
1.1.2 by Otavio Salvador
Import upstream version 1.92
54301
	* loader/i386/pc/chainloader.c (pupa_chainloader_boot_sector):
54302
	Removed.
54303
	(pupa_chainloader_unload): Return PUPA_ERR_NONE.
54304
	(pupa_rescue_cmd_chainloader): Read the image to 0x7C00 instead
54305
	of PUPA_CHAINLOADER_BOOT_SECTOR.
54306
54307
	* kern/i386/pc/startup.S: Include pupa/machine/linux.h.
54308
	(pupa_linux_prot_size): New variable.
54309
	(pupa_linux_tmp_addr): Likewise.
54310
	(pupa_linux_real_addr): Likewise.
54311
	(pupa_linux_boot_zimage): New function.
54312
	(pupa_linux_boot_bzimage): Likewise.
54313
54314
	* kern/i386/pc/init.c (struct mem_region): New structure.
54315
	(MAX_REGIONS): New macro.
54316
	(mem_regions): New variable.
54317
	(num_regions): Likewise.
54318
	(pupa_os_area_addr): Likewise.
54319
	(pupa_os_area_size): Likewise.
54320
	(pupa_lower_mem): Likewise.
54321
	(pupa_upper_mem): Likewise.
54322
	(add_mem_region): New function.
54323
	(compact_mem_regions): Likewise.
54324
	(pupa_machine_init): Set PUPA_LOWER_MEM and PUPA_UPPER_MEM to
54325
	the size of the conventional memory and that of so-called upper
54326
	memory (before the first memory hole).
54327
	Instead of adding each found region to free memory, use
54328
	add_mem_region and add them after removing overlaps.
54329
	Also, add only 1/4 of the upper memory to free memory. The rest
54330
	is used for loading OS images. Maybe this is ad hoc, but this
54331
	makes it much easier to relocate OS images when booting.
54332
54333
	* kern/rescue.c (pupa_rescue_cmd_module): Removed.
54334
	(pupa_enter_rescue_mode): Don't register initrd and module.
54335
54336
	* kern/mm.c: Include pupa/dl.h.
54337
54338
	* kern/main.c: Include pupa/file.h and pupa/device.h.
54339
54340
	* kern/loader.c (pupa_loader_load_module_func): Removed.
54341
	(pupa_loader_load_module): Likewise.
54342
54343
	* kern/dl.c (pupa_dl_load): Use the suffix ``.mod'' instead of
54344
	``.o''.
54345
54346
	* include/pupa/i386/pc/loader.h (pupa_linux_prot_size): Declared.
54347
	(pupa_linux_tmp_addr): Likewise.
54348
	(pupa_linux_real_addr): Likewise.
54349
	(pupa_linux_boot_zimage): Likewise.
54350
	(pupa_linux_boot_bzimage): Likewise.
54351
54352
	* include/pupa/i386/pc/init.h (pupa_lower_mem): Declared.
54353
	(pupa_upper_mem): Likewise.
54354
	(pupa_gate_a20): Don't export, because turning off Gate A20 in a
54355
	module is too dangerous.
54356
54357
	* include/pupa/loader.h (pupa_os_area_addr): Declared.
54358
	(pupa_os_area_size): Likewise.
54359
	(pupa_loader_set): Remove the first argument. Loader doesn't
54360
	manage modules or initrd any longer.
54361
	(pupa_loader_load_module): Removed.
54362
54363
	* conf/i386-pc.rmk (pkgdata_MODULES): Added linux.mod.
54364
	(linux_mod_SOURCES): New variable.
54365
	(linux_mod_CFLAGS): Likewise.
54366
54367
2003-01-07  Yoshinori K. Okuji  <okuji@enbug.org>
54368
54369
	* util/i386/pc/pupa-setup.c (setup): Convert the endianness of
54370
	the length of a blocklist correctly.
54371
54372
	* util/i386/pc/biosdisk.c (pupa_util_biosdisk_open) [__linux__]:
54373
	Use ioctl only if the OS file is a block device.
54374
	(pupa_util_biosdisk_open): Don't use ST.ST_BLOCKS, because it is
54375
	not very useful for normal files.
54376
54377
	* kern/main.c (pupa_set_root_dev): New function.
54378
	(pupa_load_normal_mode): Likewise.
54379
	(pupa_main): Call those above.
54380
54381
	* include/pupa/types.h (pupa_swap_bytes16): Cast the result to
54382
	pupa_uint16_t.
54383
54384
	* include/pupa/kernel.h (pupa_enter_normal_mode): Removed.
54385
54386
2003-01-06  Yoshinori K. Okuji  <okuji@enbug.org>
54387
54388
	* util/i386/pc/pupa-setup.c: Include pupa/machine/kernel.h.
54389
	(setup): Configure the installed partition information and the
54390
	dl prefix.
54391
54392
	* loader/i386/pc/chainloader.c (my_mod): New variable.
54393
	(pupa_chainloader_unload): New function.
54394
	(pupa_rescue_cmd_chainloader): Refer itself.
54395
	(PUPA_MOD_INIT): Save its own module in MY_MOD.
54396
54397
	* kern/i386/pc/startup.S (install_partition): Removed.
54398
	(version_string): Likewise.
54399
	(config_file): Likewise.
54400
	(pupa_install_dos_part): New variable.
54401
	(pupa_install_bsd_part): Likewise.
54402
	(pupa_prefix): Likewise.
54403
	(pupa_chainloader_real_boot): Call pupa_dl_unload_all.
54404
54405
	* kern/i386/pc/init.c: Include pupa/machine/kernel.h, pupa/dl.h
54406
	and pupa/misc.h.
54407
	(make_install_device): New function.
54408
	(pupa_machine_init): Set the dl prefix.
54409
54410
	* kern/rescue.c: Include pupa/rescue.h and pupa/dl.h.
54411
	(buf): Renamed to ...
54412
	(linebuf): ... this.
54413
	(pupa_rescue_cmd_prefix): New function.
54414
	(pupa_rescue_cmd_insmod): Likewise.
54415
	(pupa_rescue_cmd_rmmod): Likewise.
54416
	(pupa_rescue_cmd_lsmod): Likewise.
54417
	(pupa_enter_rescue_mode): Register new commands: prefix, insmod,
54418
	rmmod and lsmod.
54419
54420
	* kern/mm.c (pupa_memalign): If failed even after invalidating
54421
	disk caches, unload unneeded modules and retry.
54422
54423
	* kern/misc.c (pupa_memmove): New function.
54424
	(pupa_memcpy): Removed.
54425
	(pupa_strcpy): New function.
54426
	(pupa_itoa): Made static.
54427
54428
	* kern/dl.c (pupa_dl_iterate): New function.
54429
	(pupa_dl_ref): Likewise.
54430
	(pupa_dl_unref): Likewise.
54431
	(pupa_dl_unload): Return if succeeded or not.
54432
	(pupa_dl_unload_unneeded): New function.
54433
	(pupa_dl_unload_all): Likewise.
54434
	(pupa_dl_init): Renamed to ...
54435
	(pupa_dl_set_prefix): ... this.
54436
	(pupa_dl_get_prefix): New function.
54437
54438
	* include/pupa/i386/pc/kernel.h: Include pupa/types.h.
54439
	(PUPA_KERNEL_MACHINE_INSTALL_DOS_PART): New macro.
54440
	(PUPA_KERNEL_MACHINE_INSTALL_BSD_PART): Likewise.
54441
	(PUPA_KERNEL_MACHINE_PREFIX): Likewise.
54442
	(pupa_install_dos_part): Declared.
54443
	(pupa_install_bsd_part): Likewise.
54444
	(pupa_prefix): Likewise.
54445
	(pupa_boot_drive): Likewise.
54446
54447
	* include/pupa/types.h: Fix a typo.
54448
54449
	* include/pupa/misc.h (pupa_memcpy): New macro. Just an alias to
54450
	pupa_memmove.
54451
	(pupa_memmove): Declared.
54452
	(pupa_strcpy): Likewise.
54453
54454
	* include/pupa/dl.h (PUPA_MOD_INIT): Change the prototype. Now
54455
	pupa_mod_init takes one argument, its own module.
54456
	(pupa_dl_unload_unneeded): Declared.
54457
	(pupa_dl_unload_all): Likewise.
54458
	(pupa_dl_ref): Likewise.
54459
	(pupa_dl_unref): Likewise.
54460
	(pupa_dl_iterate): Likewise.
54461
	(pupa_dl_init): Renamed to ...
54462
	(pupa_dl_set_prefix): ... this.
54463
	(pupa_dl_get_prefix): Declared.
54464
54465
	* fs/fat.c [!PUPA_UTIL] (my_mod): New variable.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54466
	(pupa_fat_dir) [!PUPA_UTIL]: Prevent the fat module from being
1.1.2 by Otavio Salvador
Import upstream version 1.92
54467
	unloaded.
54468
	(pupa_fat_open) [!PUPA_UTIL]: Refer itself if succeeded.
54469
	(pupa_fat_close) [!PUPA_UTIL]: Unrefer itself.
54470
54471
	* configure.ac (tmp_CFLAGS): Added -Wshadow, -Wpointer-arith,
54472
	-Wmissing-prototypes, -Wundef and -Wstrict-prototypes.
54473
54474
2003-01-03  Yoshinori K. Okuji  <okuji@enbug.org>
54475
54476
	* util/i386/pc/pupa-setup.c (setup): Define the internal
54477
	function find_first_partition_start at the top level, because GCC
54478
	3.0.x cannot compile internal functions in deeper scopes
54479
	correctly.
54480
	(find_root_device): Use lstat instead of stat.
54481
	Don't follow symbolic links.
54482
	Fix the path-constructing code.
54483
54484
	* util/i386/pc/biosdisk.c [__linux__] (BLKFLSBUF): New macro.
54485
	(pupa_util_biosdisk_open) [__linux__]: Get the size of a device
54486
	by a BLKGETSIZE ioctl first, because block devices don't fill
54487
	the member st_mode of the structure stat on Linux.
54488
	[__linux__] (linux_find_partition): Use a temporary buffer
54489
	REAL_DEV for the working space. Copy it to DEV before returning.
54490
	(open_device) [__linux__]: Call ioctl with BLKFLSBUF to make the
54491
	buffer cache consistent.
54492
	(get_os_disk) [__linux__]: Use the length 5 instead of 4 for
54493
	strncmp. The previous value was merely wrong.
54494
	(pupa_util_biosdisk_get_pupa_dev): Use stat instead of lstat.
54495
54496
	* fs/fat.c (pupa_fat_read_data): Shift 4 instead of 12 when the
54497
	FAT size is 12. The previous value was merely wrong.
54498
54499
	* kern/main.c (pupa_main): Don't split the starting message from
54500
	newlines.
54501
54502
	* kern/term.c (pupa_putchar): Put CR after LF instead of before
54503
	LF, because BIOS goes crazy about character attributes in this
54504
	case.
54505
54506
2003-01-03  Yoshinori K. Okuji  <okuji@enbug.org>
54507
54508
	* include/i386/pc/util/biosdisk.h: New file.
54509
	* util/i386/pc/biosdisk.c: Likewise.
54510
	* util/i386/pc/pupa-setup.c: Likewise.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54511
1.1.2 by Otavio Salvador
Import upstream version 1.92
54512
	* Makefile.in (INCLUDE_DISTFILES): Added
54513
	include/pupa/i386/pc/util/biosdisk.h.
54514
	(UTIL_DISTFILES): Added biosdisk.c and pupa-setup.c under the
54515
	directory util/i386/pc.
54516
	(install-local): Added a rule for sbin_UTILITIES.
54517
	(uninstall): Likewise.
54518
54519
	* util/i386/pc/pupa-mkimage.c (usage): Fix a typo in the doc.
54520
54521
	* util/misc.c (xrealloc): New function.
54522
	(pupa_malloc): Likewise.
54523
	(pupa_free): Likewise.
54524
	(pupa_realloc): Likewise.
54525
	(pupa_stop): Likewise.
54526
	(pupa_putchar): Likewise.
54527
54528
	* kern/disk.c (pupa_disk_read): Prevent L from underflowing.
54529
54530
	* include/pupa/util/misc.h (xrealloc): Declared.
54531
54532
	* include/pupa/i386/pc/boot.h (PUPA_BOOT_MACHINE_BPB_START): New
54533
	macro.
54534
	(PUPA_BOOT_MACHINE_BPBEND): Renamed to ...
54535
	(PUPA_BOOT_MACHINE_BPB_END): ... this.
54536
54537
	* include/pupa/fs.h [PUPA_UTIL] (pupa_fat_init): Declared.
54538
	[PUPA_UTIL] (pupa_fat_fini): Likewise.
54539
54540
	* fs/fat.c [PUPA_UTIL] (pupa_fat_init): Defined. Maybe a better
54541
	way should be implemented.
54542
	[PUPA_UTIL] (pupa_fat_fini): Likewise.
54543
54544
	* disk/i386/pc/biosdisk.c (pupa_biosdisk_call_hook): Increase
54545
	the size of NAME for safety.
54546
	(pupa_biosdisk_iterate): Search hard disks to 0x90 instead of
54547
	0x88.
54548
54549
	* conf/i386-pc.rmk (sbin_UTILITIES): New variable.
54550
	(pupa_setup_SOURCES): Likewise.
54551
54552
	* genmk.rb (Utility#rule): Add $(BUILD_CFLAGS) into the rules.
54553
54554
2002-12-28  Yoshinori K. Okuji  <okuji@enbug.org>
54555
54556
	* kern/i386/pc/startup.S (push_get_mmap_entry): Revert to a
54557
	bunch of pushl's from pusha, because this destroys the return
54558
	value.
54559
54560
2002-12-28  Yoshinori K. Okuji  <okuji@enbug.org>
54561
54562
	Use -mrtd and -mregparm=3 to reduce the generated code sizes.
54563
	This means that any missing prototypes could be fatal. Also, you
54564
	must take care when writing assembly code. See the comments at
54565
	the beginning of startup.S, for more details.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54566
1.1.2 by Otavio Salvador
Import upstream version 1.92
54567
	* kern/i386/pc/startup.S (pupa_halt): Modified for the new
54568
	compilation mechanism.
54569
	(pupa_chainloader_real_boot): Likewise.
54570
	(pupa_biosdisk_rw_int13_extensions): Likewise.
54571
	(pupa_biosdisk_rw_standard): Likewise.
54572
	(pupa_biosdisk_check_int13_extensions): Likewise.
54573
	(pupa_biosdisk_get_diskinfo_int13_extensions): Likewise.
54574
	(pupa_biosdisk_get_diskinfo_standard): Likewise.
54575
	(pupa_get_memsize): Likewise.
54576
	(pupa_get_mmap_entry): Likewise.
54577
	(pupa_console_putchar): Likewise.
54578
	(pupa_console_setcursor): Likewise.
54579
	(pupa_getrtsecs): Use pushl instead of push.
54580
54581
	* kern/i386/pc/init.c (pupa_machine_init): Use the scratch
54582
	memory instead of the stack for a mmap entry, because some
54583
	BIOSes may ignore the maximum size and overflow.
54584
54585
	* conf/i386-pc.rmk (COMMON_CFLAGS): Added -mrtd and -mregparm=3.
54586
54587
	* genmk.rb (PModule#rule): Compile automatically generated
54588
	sources with module-specific CFLAGS as well as other sources.
54589
54590
2002-12-27  Yoshinori K. Okuji  <okuji@enbug.org>
54591
54592
	* configure.ac: Check ld.
54593
	Replace CFLAGS and CPPFLAGS with BUILD_CFLAGS and BUILD_CPPFLAGS
54594
	respectively, before checking endianness and sizes.
54595
54596
	* Makefile.in (LD): New variable.
1.3.2 by Christopher James Halse Rogers
Import upstream version 1.96+20080724
54597
1.1.2 by Otavio Salvador
Import upstream version 1.92
54598
2002-12-27  Yoshinori K. Okuji  <okuji@enbug.org>
54599
54600
	* Makefile.in (BUILD_CC): CC -> BUILD_CC.
54601
54602
2002-12-27  Yoshinori K. Okuji  <okuji@enbug.org>
54603
54604
	* Changelog: New file.
54605